很多公司都使用代理上网,这样当然是有原因的,因为要对公司员工访问网络进行监视,但是这很令开发人员郁闷,因为在程序中访问网络资源是需要自己设置代理认证的,我们公司就是这样的。幸亏不要紧,因为C#提供了针对访问网络资源代理的设置,今天来讲解WebClient代理问题。下面是一个实现的例子: private static string GetHtml(string url, EncodingType type, bool isByProxy) { WebClient webClient = new WebClient();//创建WebClient实例myWebClient if (isByProxy) { //创建代理服务器设置对象的实例 System.Net.WebProxy wp = new System.Net.WebProxy(“ISASRV:80”);//代理名称很端口,要根据你的情况来设置 //代理服务器需要验证 wp.BypassProxyOnLocal = false; //用户名密码,要根据你的情况来设置 wp.Credentials = new NetworkCredential(“UserName”, “PWD”, “hold”); //将代理服务器设置对象赋予全局设定 GlobalProxySelection.Select = wp; //获取或设置用于对向Internet 资源的请求进行身份验证的网络凭据。 webClient.Credentials = CredentialCache.DefaultCredentials; } byte[] pagedata = webClient.DownloadData(url);//先获取二进制的资源 }