在WebException错误中获取错误号

Ali*_*efi 15 c# webexception

如何在WebException错误中获取错误号?

try
{
     HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("site");
     HttpWebResponse response = (HttpWebResponse)request.GetResponse();
     Stream stream = response.GetResponseStream();
     int i = stream.ReadByte();
}
catch (WebException e)
{
     //How To Get Error number in WebException Error?
}
Run Code Online (Sandbox Code Playgroud)

Nei*_*ght 28

您需要运行测试以确保它是ProtocolError:

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


Ali*_*efi 6

获取错误号:

catch(System.Net.WebException e)
{
    int errorNumber = (int)e.Status;
}
Run Code Online (Sandbox Code Playgroud)