添加引用列表中缺少System.Web.Http.Description

Kev*_*vin 16 asp.net-mvc-4 asp.net-web-api

我收到一个错误:

Error   1   The type or namespace name 'Description' does not exist in the namespace 'System.Web.Http' (are you missing an assembly reference?) c:\users\klippiat\documents\visual studio 2010\Projects\TfsPortal\TfsPortal\Models\ApiModel.cs  5   23  TfsPortal
Run Code Online (Sandbox Code Playgroud)

我通常会添加参考并选择缺少的参考.但是System.Web.Http.Description从列表中遗漏了.我按名称对列表进行了排序,以确保我能够看到它.我可以看到System.Web.Http.Data和.Common等但不是.Description.

我究竟做错了什么?

Ste*_*ano 58

Visual Studio 2012 SPA模板/Help/index.cshtml文件引发了您的错误.

@using System.Web.Http
@using System.Web.Http.Description  <=== CS0234: The type or namespace name 'Description' does not exist in the namespace 'System.Web.Http' (are you missing an assembly reference?)
Run Code Online (Sandbox Code Playgroud)

解决方案:在References\System.Web.Http的属性中设置"Copy Local:True"


Mar*_*ade 10

你没有做错任何事.只有一些配置问题阻止Visual Studio将引用添加到程序集列表以供编译器检查.

它们中的类型System.Web.Http.Description可以在System.Web.Http.dll程序集中找到,该程序集位于Nuget程序包文件夹中.

您可以键入Uninstall-Package Microsoft.AspNet.WebApiNuGet包控制台,然后输入Install-Package Microsoft.AspNet.WebApi要重新安装在这一点,参考将其固定.

  • 这对我来说是解决方案,但是发出以下命令更简单“update-package Microsoft.AspNet.WebApi -reinstall” (2认同)

Kev*_*vin 1

我卸载了 MVC4 并从新下载重新安装。我必须再次创建一个新项目,然后出现了描述命名空间。

奇怪的是,如果我打开旧项目,当我尝试添加 using... 时,描述命名空间仍然丢失。

  • 卸载 WebApi Nuget Package 并重新安装也有帮助,并且比卸载/重新安装完整的 MVC4 堆栈要快得多。 (3认同)