System.Threading.Tasks.TaskCanceledException: 已取消一個任務

Exception: System.AggregateException: 發生一個或多個錯誤。 ---> System.Threading.Tasks.TaskCanceledException: 已取消一個任務。
System.Web.Http.Dispatcher.HttpRoutingDispatcher.SendAsync(System.Net.Http.HttpRequestMessage request, 
System.Threading.CancellationToken cancellationToken) > 
System.Net.Http.HttpMessageInvoker.SendAsync(System.Net.Http.HttpRequestMessage request, System.Threading.CancellationToken cancellationToken) > 
System.Web.Http.Dispatcher.HttpControllerDispatcher.SendAsync(System.Net.Http.HttpRequestMessage request, 
System.Threading.CancellationToken cancellationToken) > System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start() > 
System.Web.Http.Dispatcher.HttpControllerDispatcher+<SendAsync>d__1.MoveNext() > 
System.Web.Http.Controllers.ActionFilterResult.ExecuteAsync() > 
System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start() > 
System.Web.Http.Controllers.ActionFilterResult+<ExecuteAsync>d__2.MoveNext() > 
System.Web.Http.Controllers.ApiControllerActionInvoker.InvokeActionAsyncCore(System.Web.Http.Controllers.HttpActionContext actionContext, 
System.Threading.CancellationToken cancellationToken) > System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start() > 
System.Web.Http.Controllers.ApiControllerActionInvoker+<InvokeActionAsyncCore>d__0.MoveNext() > 
System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(System.Web.Http.Controllers.HttpControllerContext controllerContext, 
System.Collections.Generic.IDictionary`2[System.String,System.Object] arguments, System.Threading.CancellationToken cancellationToken) > 
System.Web.Http.Controllers.ReflectedHttpActionDescriptor+ActionExecutor+<>c__DisplayClass12.<GetExecutor>b__8(System.Object instance, System.Object[] methodParameters) > 
?.lambda_method(System.Runtime.CompilerServices.Closure , System.Object , System.Object[] ) > 


今天查看網站日誌時,發現不少這種錯誤信息。

訪問一個頁面時,AJAX 請求 ASP.NET Web API 。多次點擊刷新,出錯。

原因:頁面加載  =》 ajax 觸發 web api =》  頁面刷新 =》web api 的任務被取消 ;   web api 是異步編程, 任務取消時,會觸發  AggregateException 導常。

日誌記錄時,遇到 AggregateException 時,直接忽略。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章