从哪里引用缺少的程序集(System.Net.Http.Formatting)?

时间:2013-10-11 15:58:04

标签: .net-assembly visual-studio-debugging visual-studio-2013 system.net mediatypeformatter

在我的Visual Studio 2013 RC项目中,我收到了这个错误信息:

  

定义了'System.Net.Http.Formatting.MediaTypeFormatter'类型   在未引用的程序集中。您必须添加引用   程序集'System.Net.Http.Formatting,版本= 4.0.0.0,   文化=中立,PublicKeyToken = 31bf3856ad364e35'

...在Controller的"var response = "代码行中:

public HttpResponseMessage PostDelivery(Delivery delivery)
{
    delivery = repository.Add(delivery);
    var response = Request.CreateResponse<Delivery>(HttpStatusCode.Created, delivery);

    string uri = Url.Link("DefaultApi", new { id = delivery.Id });
    response.Headers.Location = new Uri(uri);
    return response;
}

在我的硬盘中搜索所需的程序集(“System.Net.Http.Formatting”),它会向我显示它存在的几个位置,但它们都在现有项目中,如下所示:

enter image description here

当然还有另一个可以引用System.Net.Http.Formatting.dll的位置!但在哪里?

更新

尝试在此处跟踪线索:http://www.nuget.org/packages/System.Net.Http.Formatting

IOW,选择工具&gt;库包管理器&gt;包管理器控制台,然后输入:

Install-Package System.Net.Http.Formatting -Version 4.0.20710

......我看到潘普洛纳(不是饮料)的红牛在我身上肆虐:

enter image description here

更新2

我从这里添加了System.Net.Http.Formatting.dll:

C:\Users\clay\My Documents\Visual Studio 2013\Projects\MvcApplication1\MvcApplication1\bin

...它现在编译并运行并按预期工作,但这显然是“不是首选方法”

5 个答案:

答案 0 :(得分:75)

我遇到了同样的问题。我使用了Microsoft Asp Net WebApi Client 4.0.20710,它对我有用。

在Tools&gt;中输入以下命令:库包管理器&gt;软件包管理器控制台:

Install-Package Microsoft.AspNet.WebApi.Client -Version 4.0.20710

答案 1 :(得分:41)

添加到Luiz上面回答的内容。

System.Net.Http.Formatting是一个库,用于媒体类型格式化。例如: http://msdn.microsoft.com/en-us/library/system.net.http.formatting.jsonmediatypeformatter(v=vs.118).aspx

引用它时,当我尝试时,我想在我的项目中添加一个引用,并查看Reference Manager中的Assemblies / Framework文件夹。

在Reference Manager

中的Assemblies / Extensions文件夹中实际上是

答案 2 :(得分:9)

如果您在尝试安装 System.Net.Http.Formatting -Version 4.0.20710 时出错,请尝试以下方法:

Install-Package WebApiDoodle.Net.Http.Formatting -Pre

我刚刚在NuGet上发现:https://www.nuget.org/packages/WebApiDoodle.Net.Http.Formatting/3.0.0-pre01

答案 3 :(得分:4)

右键单击项目,然后单击添加引用选项,然后转到扩展 程序集标签,然后选择 System.Net.Http.Formatting。 如果不在这里你必须手动添加prgramme文件 - &gt; Microsoft ASP.NET

答案 4 :(得分:1)

解决此问题的另一个简单选项是右键单击引用,单击“管理NuGet引用”,浏览“ Microsoft.AspNet.WebApi.Client”并安装它,或者也许重新安装它。查看包装信息以了解更多信息。