Ho creato un'app per console per utilizzare un'API Web appena creata. Il codice dell'app della console non viene compilato. Mi dà l'errore di compilazione:
'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?)
Ecco un metodo di prova in cui si verifica questo errore.
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;
}
Ho usato questo metodo e l'ho consumato da un client MVC.