title: WebAPI ActionFilter Await ExecuteActionFilterAsync No Result
body: <p>I try to create a filter to modify the content. For some reason the
  <code>var result = await actionContext.Request.Content.ReadAsStringAsync();</code> does not wait and returns me empty values. I'm sure that there is data. Checked directly inside controller and header. Is there maybe a workaround. Can be blocking, too (HttpContent seems just to have async methods).</p>
  
  <pre><code> public class AsyncAttribute : FilterAttribute, IActionFilter
  {
      public async Task&lt;HttpResponseMessage&gt; ExecuteActionFilterAsync(HttpActionContext actionContext, CancellationToken cancellationToken,
          Func&lt;Task&lt;HttpResponseMessage&gt;&gt; continuation)
      {
          await InternalActionExecuting(actionContext, cancellationToken);
  
          if (actionContext.Response != null)
          {
              return actionContext.Response;
          }
  
          HttpActionExecutedContext executedContext;
  
          try
          {
              var response = await continuation();
              executedContext = new HttpActionExecutedContext(actionContext, null)
              {
                  Response = response
              };
          }
          catch (Exception exception)
          {
              executedContext = new HttpActionExecutedContext(actionContext, exception);
          }
  
          await InternalActionExecuted(executedContext, cancellationToken);
          return executedContext.Response;
      }
  
      public virtual async Task InternalActionExecuting(HttpActionContext actionContext, CancellationToken cancellationToken)
      {
          //////////////////////////////////////////////////////////////////////////
          var result = await actionContext.Request.Content.ReadAsStringAsync();// &lt;------------------------------------------------------
          //////////////////////////////////////////////////////////////////////////
      }
  
      public virtual async Task InternalActionExecuted(HttpActionExecutedContext actionExecutedContext, CancellationToken cancellationToken)
      {
      }
   }
  </code></pre>