我正在 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 代码忽略代理时,请求使用我的正常互联网连接,并返回 API 数据。
如果有人能告诉我如何以编程方式将我的应用程序设置为忽略代理,或者最重要的是,使用默认的自动检测设置,那真的会对我有所帮助。