我想知道DefaultWebProxy
和之间的主要区别是什么GetSystemWebProxy()
。MSDN上有一些描述,但我仍然觉得我需要更多细节才能更好地理解。
另外,假设我在 C# winform 应用程序上有以下代理配置选项
- 自动检测代理设置
- 使用系统默认设置
- 没有代理
那么哪个方法去哪个选项?说Auto-detect proxy
有点等于Use system default
设置对吗?
我想知道DefaultWebProxy
和之间的主要区别是什么GetSystemWebProxy()
。MSDN上有一些描述,但我仍然觉得我需要更多细节才能更好地理解。
另外,假设我在 C# winform 应用程序上有以下代理配置选项
那么哪个方法去哪个选项?说Auto-detect proxy
有点等于Use system default
设置对吗?
根据MSDN 文章,WebRequest.DefaultWebProxy
此属性将提供app.config
文件中指定的代理信息。看起来.NET Framework v3.5 MSDN 文章缺少此特定细节。
就目前WebRequest.GetSystemWebProxy()
而言,MSDN 文章指出此方法将提供系统范围的配置代理(控制面板> Internet 选项)。
这就是我建议您实施概述的三个选项的方式:
WebRequest.GetSystemWebProxy()
(我不推荐这种方法);或者WebRequest.GetSystemWebProxy()
;WebRequest.DefaultWebProxy
和WebRequest.Proxy
属性;编辑:如果app.config WebRequest.DefaultWebRequest
中没有配置代理,则与(至少对于 .NET 4.5)几乎相同。WebRequest.GetSystemWebProxy()
不同之处在于WebRequest.GetSystemWebProxy()
它将运行 PAC 脚本(如果有)以进行代理定义。
感谢Gabrielius和23W的以下评论。