Visual C#webclient在异常消息为基础连接已关闭时无状态代码:接收时发生意外错误

Visual C#webclient在异常消息为基础连接已关闭时无状态代码:接收时发生意外错误,c#,webclient,C#,Webclient,我有一个C#格式的windows窗体应用程序,它使用Webclient下载网站的源代码,如果出现异常,我会显示状态代码。当Webexception消息 基础连接已关闭:接收时发生意外错误 状态代码未显示,而是程序因错误而中断: 对象引用未设置为对象的实例 我的代码如下: string source = ""; try { source = await client.DownloadStringTaskAsync("URL"); } catch(WebException er) { tex

我有一个C#格式的windows窗体应用程序,它使用Webclient下载网站的源代码,如果出现异常,我会显示状态代码。当Webexception消息

基础连接已关闭:接收时发生意外错误

状态代码未显示,而是程序因错误而中断:

对象引用未设置为对象的实例

我的代码如下:

string source = "";
try
{
  source = await client.DownloadStringTaskAsync("URL");
}
catch(WebException er)
{
  textbox1.AppendText("\r\nError: " + er.Message + "Status Code: " + ((HttpWebResponse)er.Response).StatusCode);
}

从MSDN中的
WebException.Response的值开始:

如果可以从Internet资源获得响应,则为WebResponse 实例,该实例包含来自Internet资源的错误响应; 否则,无效


如果没有可用的响应,
WebException.Response
可能为空。您应该将其从
catch
块中取出,而只打印异常消息。或者,如果要打印
WebException.Response
如果存在,请执行空检查。

我尝试初始化
int statuscode=0;statuscode=(int)((HttpWebResponse)er.Response)。statuscode
您是否一直在使用调试器找出哪个对象为null?er.Response显示为null