使用c#下载源代码时出错

时间:2018-05-08 17:33:43

标签: c# asp.net

我正在尝试从网页下载源代码。这是我的代码:

using (var stream = new MemoryStream())
{
    thumbnail.Save(stream); // you get the idea
    stream.Position = 0; // <- is this needed?
    WriteStreamToDisk(stream);
}

在大多数情况下,此代码工作正常;但对于某些网址,我收到以下错误:

  

远程主机强行关闭现有连接。

1 个答案:

答案 0 :(得分:2)

您没有处置WebClient对象。这可能意味着在程序终止并保持打开连接后,仍有多个WebClient个对象存在。

修复方法是将其包装在using语句中:

string sourcecode;
using (var urlcli = new WebClient())
{
    sourcecode = urlcli.DownloadString(urltxt.Text.Trim());
}

通常,实现IDisposable的对象应该调用Dispose()或包含在using语句中。