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