以下のこのメソッドで例外をどのようにキャッチしますか?タスク内の非同期HttpWebRequest呼び出しからの例外のキャッチ
private static Task<string> MakeAsyncRequest(string url)
{
if (!url.Contains("http"))
url = "http://" + url;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)";
request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
request.Method = "GET";
request.KeepAlive = false;
request.ProtocolVersion = HttpVersion.Version10;
Task<WebResponse> task = Task.Factory.FromAsync(
request.BeginGetResponse,
asyncResult => request.EndGetResponse(asyncResult),
(object)null);
return task.ContinueWith(t => FinishWebRequest(t.Result));
}
私は、などのエラーが404、403を取得しています特定の場所は次のとおりです。
Task<WebResponse> task = Task.Factory.FromAsync(
request.BeginGetResponse,
asyncResult => request.EndGetResponse(asyncResult),
(object)null);
私はあなたのエラーは、おそらくrequest.EndGetResponse(asyncResult)
を呼び出すデリゲートで起こっている
それは今リターンtask.ContinueWith(トン=> FinishWebRequest(t.Result)で例外を与えます); "1つ以上のエラーが発生しました" – Jacqueline
@Jacqueline - リクエストが例外をスローしています - エラーは何ですか? – Lee
「1つ以上のエラーが発生しました」と表示されます。 – Jacqueline