如何知道WebClient / DownloadStringCompletedEventArgs的错误异常类型?

时间:2012-12-17 05:36:15

标签: windows-phone-7 exception-handling error-handling windows-phone-7.1

我正在开发一个使用WebClient类从远程服务器获取数据的应用程序。问题是我无法区分错误是: (1)连接超时 (2)URL不存在 (3)没有网络连接

以下是代码段:

WebClient client = new WebClient();
client.DownloadStringCompleted += new DownloadStringCompletedEventHandler(client_DownloadStringCompleted);
client.DownloadStringAsync(new Uri(url, UriKind.Absolute));


void client_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
    if (e.Error == null && !e.Cancelled)
    {

    }
    else
    {
    MessageBox.Show(e.Error.ToString()); // Return System.Net.WebException
    MessageBox.Show(e.Error.Data.Count + ""); // return 0

    /*foreach (DictionaryEntry de in e.Error.Data)
        MessageBox.Show(de.Key + ", " +  de.Value);*/   
    }
}

我需要知道DownloadStringCompletedEventArgs的错误类型,因为我要向用户显示自定义的错误消息。请帮忙,谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用e.Error.Message,它会提供特定的错误消息

根据您的评论:

我没有找到任何提供所有错误消息列表的资源。检查以下内容: AsyncCompletedEventArgs.ErrorException.Message