一尘不染

HttpClient不支持PostAsJsonAsync方法C#

c#

我正在尝试从Web应用程序调用Web API。我正在使用.Net
4.5,并且在编写代码时遇到的错误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”的第一个参数(您是否缺少使用指令还是程序集引用?)

请看看并给我建议。


阅读 737

收藏
2020-05-19

共1个答案

一尘不染

是的,您需要添加一个参考

System.Net.Http.Formatting.dll

可以在扩展程序集区域中找到。

实现此目的的一种好方法是将NuGet包Microsoft.AspNet.WebApi.Client添加到您的项目中。

2020-05-19