Unit testing 在单元测试中包含system.web.http失败?

Unit testing 在单元测试中包含system.web.http失败?,unit-testing,visual-studio-2017,asp.net-web-api2,Unit Testing,Visual Studio 2017,Asp.net Web Api2,我目前正在尝试对我创建的ApiController进行单元测试。 我遇到的问题是,由于某种原因,我无法“使用”System.Web.Http。但是在我的主要项目中,我可以毫无问题地使用和(因此使用IHttpActionResult) 现在我不明白的是,为什么在单元测试项目中它不可能呢?我是忽略了什么还是需要做些不同的事情?正如建议的那样,System.Web.Http可以通过NuGet安装 Get-Project MyTestProject | Install-Package Microsoft

我目前正在尝试对我创建的
ApiController
进行单元测试。 我遇到的问题是,由于某种原因,我无法“使用”
System.Web.Http
。但是在我的主要项目中,我可以毫无问题地使用
(因此使用
IHttpActionResult

现在我不明白的是,为什么在单元测试项目中它不可能呢?我是忽略了什么还是需要做些不同的事情?

正如建议的那样,
System.Web.Http
可以通过NuGet安装

Get-Project MyTestProject | Install-Package Microsoft.AspNet.WebApi.Core
我在我的单元测试项目中测试了它,它成功了,实际上是下载的

毕竟,
System.Web
名称空间似乎不包含任何
Http
成员

不管怎么说,既然你在评论部分说你的参考资料中已经有了
System.Web.Http
,我想说的是,在安装NuGet包之前,可能缺少一些依赖项

WebApi.Core
取决于

  • WebApi.Client
    (请参阅),而这又取决于
  • Newtonsoft.Json
    (请参阅)
还提出了一个非常非常类似的问题。

正如建议的那样,
System.Web.Http
可以通过NuGet安装

Get-Project MyTestProject | Install-Package Microsoft.AspNet.WebApi.Core
我在我的单元测试项目中测试了它,它成功了,实际上是下载的

毕竟,
System.Web
名称空间似乎不包含任何
Http
成员

不管怎么说,既然你在评论部分说你的参考资料中已经有了
System.Web.Http
,我想说的是,在安装NuGet包之前,可能缺少一些依赖项

WebApi.Core
取决于

  • WebApi.Client
    (请参阅),而这又取决于
  • Newtonsoft.Json
    (请参阅)

还有人问了一个非常非常类似的问题。

很抱歉问了一些琐碎的问题,但您的项目中是否引用了System.Web?@FrancescoB。我知道大部分是琐碎的事情,所以这是我做的第一件事。我甚至把主应用程序的大部分子引用(还有.entity,…)都包括进去了,但是没有明显的效果(很遗憾)。很抱歉问了一些琐碎的问题,但是你的项目中有引用System.Web吗?@FrancescoB。我知道大部分是琐碎的事情,所以这是我做的第一件事。我甚至把主应用程序的大部分子引用(还有.entity,…)都包含进去了,但是没有明显的效果(很遗憾)。是的,这很有效。尽管我不得不问……为什么?(System.web.http dll从一开始就在软件包中,但只有在完成安装后才起作用)。为什么会出现这种情况,有什么已知的原因吗?我猜你缺少了一些其他依赖项,我编辑了我的答案以反映这一点。啊,tnx这是一种可能性(我知道我使用JObjects webapi时已经使用了newtonsoft。我不确定该项目是否包含客户端)。tnx!是的,这很有效。尽管我不得不问……为什么?(System.web.http dll从一开始就在软件包中,但只有在完成安装后才起作用)。为什么会出现这种情况,有什么已知的原因吗?我猜你缺少了一些其他依赖项,我编辑了我的答案以反映这一点。啊,tnx这是一种可能性(我知道我使用JObjects webapi时已经使用了newtonsoft。我不确定该项目是否包含客户端)。tnx!