Coffeehouse Post

Single Post Permalink

View Thread: 'System.Net.Http.HttpContent' does not contain a definition for 'ReadAsAsync' and no extension method
  • User profile image
    Sathyaish Chakravarthy

    I made a console app to consume a Web API I just made. The console app code does not compile. It gives me the compilation error:

    'System.Net.Http.HttpContent' does not contain a definition for
    'ReadAsAsync' and no extension method 'ReadAsAsync' accepting a
    first argument of type 'System.Net.Http.HttpContent' could be
    found (are you missing a using directive or an assembly reference?)


    Here's a test method in which this error occurs.

    static IEnumerable<Foo> GetAllFoos()
    {
      using (HttpClient client = new HttpClient())
      {
        client.DefaultRequestHeaders.Add("appkey", "myapp_key");
    
        var response = client.GetAsync("http://localhost:57163/api/foo").Result;
    
        if (response.IsSuccessStatusCode)
          return response.Content.ReadAsAsync<IEnumerable<Foo>>().Result.ToList();
      }
    
      return null;
    }


    I have used this method and consumed it from an MVC client.