连接尝试从URL下载字符串时关闭

时间:2013-01-11 13:44:31

标签: c# winforms webclient connectionexception

我想将字符串从一种语言翻译成另一种语言。我试过这段代码:

        input = clipoard_word;
        string languagePair = "en|bn";
        string url = String.Format("http://www.google.com/translate_t?hl=en&ie=UTF8&text={0}&langpair={1}", input, languagePair);
        WebClient webClient = new WebClient();
        webClient.Encoding = System.Text.Encoding.UTF8;
        try
        {
             result = webClient.DownloadString(url);
        }
        catch (Exception e)
        {
            MessageBox.Show(e.Message);
        }
        result = result.Substring(result.IndexOf("<span title=\"") + "<span title=\"".Length);
        result = result.Substring(result.IndexOf(">") + 1);
        result = result.Substring(0, result.IndexOf("</span>"));
        result = WebUtility.HtmlDecode(result.Trim());
        label1.Text = result;

但我在线上得到例外:

    result = webClient.DownloadString(url);

错误消息显示:

  

基础连接已关闭;发生意外错误   在接收

这里有什么问题,如何解决这个问题? N:B:我不想在这里使用google翻译api。

1 个答案:

答案 0 :(得分:0)

您好,我终于为您找到了解决方案

您需要在配置文件中添加它

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

问题 --- 是服务器只是采用IE的代理设置来执行DownloadString调用。我的本地IIS(7.0)要求必须正确配置代理内容才能使服务器端http访问正常工作。这可以通过web.config中的某些设置来完成: