AggregateException is throwing while waiting for PostAsJsonAsync

asp.net, asp.net-web-api, c#, task-parallel-library

Solution

Are you posting a big piece of data ? Once I had a similar issue. I believe the underlying problem is occasional timeout due to bandwidth issues. I tried getting the task and manually waiting on it then checking `.IsFaulted` and `.IsCancelled` but the `.Result` throws `AggregateException` / `TaskCancelledException`.

Maybe you should try to increase HttpClient.Timeout property which is 100 sec by default ?

Problem

AggregateException is throwing while waiting for API post to complete how i could fix this? My API call is similar like this ``` using (var httpClient = new HttpClient()) { httpClient.BaseAddress = new Uri(workflowUrl); var task = httpClient.PostAsJsonAsync("api/apiname/execute/", executeModel) .ContinueWith(x => x.Result.Content.ReadAsAsync<bool>().Result); Task continuation = task.ContinueWith(x => { bool response = x.Result; }); continuation.Wait(); } ``` I am getting Exception given below while waitng for POST to complete. ``` System.AggregateException was caught Message=One or more errors occurred. Source=mscorlib StackTrace: at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken) at System.Threading.Tasks.Task.Wait() at InnerException: System.AggregateException Message=One or more errors occurred. Source=mscorlib StackTrace: at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) at System.Threading.Tasks.Task`1.get_Result() at at System.Threading.Tasks.Task`1.<>c__DisplayClass17.<ContinueWith>b__16(Object obj) at System.Threading.Tasks.Task.InnerInvoke() at System.Threading.Tasks.Task.Execute() InnerException: System.AggregateException Message=One or more errors occurred. Source=mscorlib StackTrace: at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) at System.Threading.Tasks.Task`1.get_Result() at WebUI.ListController.<ListRepeater_ItemCommand>b__f(Task`1 x) in PostAsJsonAsync:line 741 at System.Threading.Tasks.Task`1.<>c__DisplayClass1a`1.<ContinueWith>b__19() at System.Threading.Tasks.Task`1.InvokeFuture(Object futureAsObj) at System.Threading.Tasks.Task.InnerInvoke() at System.Threading.Tasks.Task.Execute() InnerException: System.Threading.Tasks.TaskCanceledException Message=A task was canceled. InnerException: ```

Original source