我正在尝试从Web应用程序调用Web API。我正在使用.Net 4.5,并且在编写代码时遇到的错误HttpClient不包含定义PostAsJsonAsync方法。
HttpClient
PostAsJsonAsync
下面是代码:
HttpClient client = new HttpClient(); client.BaseAddress = new Uri("http://localhost:51093/"); client.DefaultRequestHeaders.Accept.Add( new MediaTypeWithQualityHeaderValue("application/json")); var user = new Users(); user.AgentCode = 100; user.Remarks = "Test"; user.CollectionDate = System.DateTime.Today; user.RemittanceDate = System.DateTime.Today; user.TotalAmount = 1000; user.OrgBranchID = 101; var response = client.PostAsJsonAsync("api/AgentCollection", user).Result;
我收到错误消息:
错误:“ System.Net.Http.HttpClient”不包含“ PostAsJsonAsync”的定义,并且找不到扩展方法“ PostAsJsonAsync”接受类型为“ System.Net.Http.HttpClient”的第一个参数(您是否缺少使用指令还是程序集引用?)
请看看并给我建议。
是的,您需要添加一个参考
System.Net.Http.Formatting.dll
可以在扩展程序集区域中找到。
实现此目的的一种好方法是将NuGet包Microsoft.AspNet.WebApi.Client添加到您的项目中。
Microsoft.AspNet.WebApi.Client