【发布时间】:2016-05-04 18:00:02
【问题描述】:
我正在构建一个调用 RESTful API Web 服务的 ASP.NET MVC 5 razor 应用程序。API 中的一个调用使用 POST 方法。我的代码中有这一行:
var response = httpClient.PostAsJsonAsync("/api/account/AddUserAccount", item).Result;
现在,我能够构建该行而不会显示任何错误,但是当我构建应用程序时,我得到了
“HttpClient”不包含“PostAsJsonAsync”的定义,并且找不到接受“HttpClient”类型的第一个参数的扩展方法“PostAsJsonAsync”
我已经对错误进行了搜索,并在 Stack Overflow 上找到了帖子,上面写着要添加对 System.Net.Http.Formatting.dll 的引用,但我在我的系统上找不到该 DLL。如何解决此错误?
【问题讨论】:
-
我安装了它,但它没有解决问题。现在我收到有关无法解析 System.Net.Http 和项目 TestAccountService 中的依赖 System.Net.Http.Formatting.Extension 5.2.3 不支持框架 DNXCore,Version=v5.0 的消息。
-
如果您使用的是 DNX,那么您不能使用 PostAsJsonAsync 方法。请尝试以下操作:
var response = await client.PostAsync("api/values", new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(item);, Encoding.UTF8,"application/json")); -
我能够得到您的第二个编译建议。谢谢。如果你把它作为一个答案,我会给你功劳。
-
@TonyVitabile - 我只是将所有 cmets 总结为答案。
标签: c# asp.net-mvc