当前位置:  开发笔记 > 编程语言 > 正文

C#中System.Net的Webclient将无法连接到服务器

如何解决《C#中System.Net的Webclient将无法连接到服务器》经验,为你挑选了1个好方法。

为了让System.Net使用Microsoft Visual C#2008 Express Edition,我需要做些什么吗?我似乎无法获得任何Web类型控件或类工作..下面的WebClient示例总是抛出异常" 无法连接到远程服务器 "..因此我无法加载WebBrowser控件一页也是.

这是代码(已编辑):

using System;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Net;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            using (WebClient client = new WebClient()) {
                string s = client.DownloadString("http://www.google.com");
                this.textBox1.Text = s;
            }
        }
    }
}

这是一个简单的形式,只有一个文本框控件(多行设置为true).异常被抛出DownloadString(...)线上.我也尝试过使用WebRequest..同样的例外!

编辑:

我连接到Linksys WRT54G路由器,它直接连接到我的电缆调制解调器.我不是代理服务器的后面,虽然我确实运行proxycfg -u了,但我得到了:

Updated proxy settings
Current WinHTTP proxy settings under:
  HKEY_LOCAL_MACHINE\
    SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Connections\
      WinHttpSettings :

 Direct access (no proxy server).

我使用的是Windows XP,没有运行任何防火墙.目前只有AVG.我很确定我不应该转发任何端口或任何东西,但我确实尝试将端口80转发到我的路由器上的工作站.没有帮助.



1> Marc Gravell..:

(更新 - 我的意思是proxycfg,不是httpcfg; proxycfg -u会进行导入)

首先,这里的"表达"没有什么特别之处.其次,contoso是一个虚拟网址.

你在用什么操作系统?你经过代理服务器吗?如果是这样,您可能需要配置操作系统的http堆栈 - proxycfg将在XP上完成工作,并可用于导入用户的IE设置.

样本很好,虽然它没有正确处理多个IDisposable对象 - 以下更简单:

        using (WebClient client = new WebClient()) {
            string s = client.DownloadString("http://www.google.com");
            // do something with s
        }

推荐阅读
谢谢巷议
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有