문제

How To Get Error number in WebException Error?

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?
}
도움이 되었습니까?

해결책

You'll want to run a test to make sure that it was a ProtocolError:

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

다른 팁

For Get Error Number:

catch(System.Net.WebException e)
{
    int errorNumber = (int)e.Status;
}

You could try to parse the message, but there isn't always an error number. A timeout for example doesn't result in an HTTP error code.

You can't do that because WebException(s) don't have error numbers. You can define your own error numbers if that's what you want/need to do.

Here's the documentation You can get Status, Message, StackTrace, etc, etc.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top