2012-10-22 30 views
1

我正在开发一个程序,它必须在不同的网络上工作。 我有一个代理设置的问题。 当我设置代理在内部网为null,httpwebrequest null代理设置

WebRequest.DefaultWebProxy = null; 

的HttpWebRequest不响应;但是,当我在互联网上工作时,我需要将其设置为空。

我已经解决了我提出请求的问题,如果没有响应,我将代理设置为null。 但是这个解决方案可能会出问题,必须有更好的解决方案。 你有什么想法吗?

+0

你应该让用户设置了代理,无论是从应用程序配置文件或自定义UI,取决于你的应用程序。 –

回答

0

我通常做的是什么系统由用户拿起默认凭据设置:

svc.Proxy = WebRequest.GetSystemWebProxy(); 
if (svc.Proxy != null) 
    svc.Proxy.Credentials = System.Net.CredentialCache.DefaultCredentials; 
+0

我试过你的建议,但我认为它不能得到默认设置,因为webrequest响应速度非常慢。 – Oktay