【问题标题】:Conflicting information in the MSDN and compiler warningsMSDN 中的信息冲突和编译器警告
【发布时间】:2011-03-13 10:45:00
【问题描述】:

我正在尝试使用 FtpWebRequest.Proxy 并将其设置为 GlobalProxySelection.GetEmptyWebProxy() 但是我收到编译器警告

警告 1 'System.Net.GlobalProxySelection' 已过时:'"此类已被弃用。请改用 WebRequest.DefaultWebProxy 来访问和设置全局默认代理。使用 'null' 而不是 GetEmptyWebProxy。http://go.microsoft.com/fwlink/?linkid=14202" '

它建议使用 null,但在 FtpWebRequest.Proxy 页面的 execptions 部分下它说

ArgumentNullException - 此属性不能设置为 null。

正确的做法是什么?

【问题讨论】:

  • 您使用的是什么版本的 .NET?
  • @thecoop 3.5 但这是在 VS2010 中构建的

标签: c# msdn conflict deprecated


【解决方案1】:

这令人困惑。但是查看该属性的设置器的反编译代码,如果您将其设置为空,它看起来不会抛出该异常。我建议文档已过时并将其设置为空。您是否遇到异常应该很快就会清楚...

【讨论】:

  • 我在 null 下运行了一个测试。没有例外。我猜 MSDN 已经过时了。
【解决方案2】:

你是对的。这令人困惑。

答案似乎是使用WebRequest.DefaultWebProxy 属性。

【讨论】:

  • 但我不想使用默认的网络代理。默认设置的代理是为了离开我们的内部网络。我正在访问的 ftp 资源在内部网络上。如果我使用代理,我必须通过 5Mbit 链接(服务器是速率限制的),如果我留在内部,我有 1Gbit 传输。
猜你喜欢
  • 1970-01-01
  • 2016-01-05
  • 2020-03-05
  • 2012-12-23
  • 2011-05-09
  • 1970-01-01
  • 2021-06-20
  • 1970-01-01
相关资源
最近更新 更多