正确处理WebException

时间:2016-12-21 20:35:20

标签: c# .net exception-handling

我通过WSDL生成的代理类调用Web服务。在我们如何处理的情况下,我们如何处理其案例以确保我们捕获所有信息。

https://msdn.microsoft.com/en-us/library/system.net.webexceptionstatus%28v=vs.110%29.aspx

我相信这将始终包含一些信息,但在文章中说明了

  

此API支持产品基础结构,不能直接在您的代码中使用。

然后继续给出一个例子,使用这里的代码https://msdn.microsoft.com/en-us/library/system.net.webexception.response%28v=vs.110%29.aspx

 if(e.Status == WebExceptionStatus.ProtocolError) {
        Console.WriteLine("Status Code : {0}", ((HttpWebResponse)e.Response).StatusCode);
        Console.WriteLine("Status Description : {0}", ((HttpWebResponse)e.Response).StatusDescription);
    }
  •   

    如何最好地处理此异常。我的优先事项是1)捕获   我相信的异常信息是e.Status? 2)HTTP代码/描述(如500   内部服务器错误)

  •   

    仅在e.Status == WebExceptionStatus.ProtocolError时填充StatusCode / StatusDescription,因为另一个e.status = WebExceptionStatus.TimeOut不会是599 http错误代码或499 WebExceptionStatus.ConnectionClosed时?

  •   

    MSDN 是什么意思支持产品基础架构并且不在代码中使用它?

  •   

    如果其他错误状态不是协议异常,我将需要捕获任何其他信息(仅用于捕获更多信息以进行调试,例如 MSDN中的代码示例 for {{ 1}})。

0 个答案:

没有答案