繁体   English   中英

以编程方式更改defaultproxy而不是使用app.config

[英]Programmatically changing defaultproxy instead of using app.config

我正在WPF中创建一个桌面应用程序。 此应用程序使用webclient实例与API通信以从中收集数据。

在这个桌面应用程序中,我想创建一个复选框,允许用户忽略Internet选项代理或使用默认的自动检测选项。

此时我将此defaultproxy设置添加到我的app.config中,以阻止我的应用程序尝试通过代理进行通信而忽略它。

<system.net>
    <defaultProxy enabled="false" useDefaultCredentials="false">
      <proxy/>
      <bypasslist/>
      <module/>
    </defaultProxy>
</system.net>

当我的app.config中没有此代码时,我的应用程序将尝试使用默认的Internet选项代理。

因此,为了通过设置菜单中的复选框切换,我将不得不以编程方式更改这些设置。

我知道当我将默认代理设置为新的webproxy时,应用程序将忽略internetoptions代理。

WebRequest.DefaultWebProxy = new WebProxy();

但我不能为我的生活弄清楚如何将其设置回自动检测代理使用,就像我在app.config中插入上面的defaultproxy设置之前一样。

我正在通过使用有缺陷的代理来测试它。 这意味着如果我发送api请求,则无法找到代理,并且我收到了一个webexception。 当我使用app.config代码忽略代理时,请求使用我的正常Internet连接,并返回API数据。

如果有人能告诉我如何以编程方式将我的应用程序设置为忽略代理,或者最重要的是使用默认的自动检测设置,那真的会帮助我。

如果要将代理设置回默认代理,可以使用此静态方法

WebRequest.GetSystemWebProxy();

请看这里https://msdn.microsoft.com/de-de/library/system.net.webrequest.getsystemwebproxy(v=vs.110).aspx

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM