私は次のコードを持っています:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "HEAD";
request.Credentials = MyCredentialCache;
try
{
request.GetResponse();
}
catch
{
}
特定の404エラーをキャッチするにはどうすればよいですか?WebExceptionStatus.ProtocolErrorは、エラーが発生したことを検出するだけで、エラーの正確なコードを提供することはできません。
例えば:
catch (WebException ex)
{
if (ex.Status != WebExceptionStatus.ProtocolError)
{
throw ex;
}
}
十分に役に立たないだけです...プロトコル例外は401、503、403など、実際には何でもかまいません。
throw ex
。空の呼び出しスタックで新しい例外が生成されます。だけを使用してくださいthrow
。
WebRequest
System.Exception
でください。ハンドラの例外テキストに依存しないでください。