当前位置: 首页 > 知识库问答 >
问题:

编译器找不到PostAsJsonAsync方法

赫连方伟
2023-03-14

我正在构建一个ASP。NET MVC 5 razor应用程序,该应用程序调用RESTful API web服务。。API中的一个调用使用POST方法。我的代码中有这一行:

var response = httpClient.PostAsJsonAsync("/api/account/AddUserAccount", item).Result;

现在,我能够在不显示任何错误的情况下构建该行,但是当我构建应用程序时,我得到了

“HttpClient”不包含“PostAsJsonAsync”的定义,并且找不到接受“HttpClient”类型的第一个参数的扩展方法“PostAsJsonAsync”

我已经对错误进行了搜索,并在堆栈溢出上找到了一些帖子,上面说要添加对系统的引用。网Http。格式化。dll,但我在我的系统上找不到该dll。如何修复此错误?

共有2个答案

杨志强
2023-03-14

您缺少using语句。

using System.Net.Http; /* probably this one */
using System.Net.Http.Headers;

当然,除非您有一个系统,否则使用该语句是不好的。网Http。引用的格式化(.dll)(如您在搜索中发现的)

此dll来自nuget包!

微软。AspNet.WebApi.客户端

最新链接:

https://www.nuget.org/packages/Microsoft.AspNet.WebApi.Client/

我在这里的版本(在那里我找到了该.dll的副本)

https://www.nuget.org/packages/Microsoft.AspNet.WebApi.Client/4.0.20710

韩阳云
2023-03-14

如果要使用PostAsJsonAsync方法,则需要使用以下NuGet包。

但是,如果您使用DNX,它将无法工作,因为它不支持DNX(还?)。

在这种情况下,您可以执行以下操作:

var response = await client.PostAsync("api/values", new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(item);, Encoding.UTF8,"application/json"));

这应该会有帮助。

 类似资料:
  • 问题内容: 我正在尝试使用Ant将Web应用程序打包到war文件中。 构建时,出现以下错误: 以下是我的build.xml 如何编译没有主类的类文件? 如何设置课程路径? 作为参考,我正在使用Eclipse。 问题答案: 除了需要在JDK的/ lib目录中的tools.jar的javac任务以外,所有您的蚂蚁工具都可以正常工作,在这种情况下,JRE是不够的。因此,来自ant的提示是:“无法找到ja

  • 我无法从命令行编译Maven项目。我使用的是Maven版本: Apache Maven 3.5.4 null 这是我的pom.xml(没有依赖项): 新的堆栈跟踪是:

  • 问题内容: 我正在使用64位的Debian 8(Jessie)。我安装了,现在坐在。 但是当我这样做时(就像文档所说的那样) 编译(用时我只得到) 注意:在另一台使用旧的64位Suse的机器上,该机器位于完全相同的路径上,与新的Debian相比,没有设置其他环境var,它工作得很好。使用完全相同的makefile从一台计算机迁移到另一台计算机时发生了问题。迁移(它们都已安装了)之后,我刚刚需要工作

  • 我在Eclipse中pom.xml中收到错误消息。 http://Maven.apache.org/Maven-v4_0_0.xsd“>4.0.0com.hmis chmis war 1.0-快照chmis Maven Webapp http://Maven.apache.org 这是我的pom.xml。当我运行该程序时,会出现如下错误。

  • 也许你们中的某个人有解决办法。

  • 我对这个问题感到非常困惑。我的gradle文件中有以下几行: 但是,当我构建时,会出现以下错误: 我对此感到困惑,因为编译器确实存在于谷歌的repo中:https://maven.google.com/web/index.html#androidx.compose.compiler:compiler 如果有必要,我可以发布更多的信息,但是我想保持简单。即使撰写设置完全错误,为什么它找不到POM文件