我是ASP.NET MVC 5的新手,我想建立一个小项目来解决一些问题。 当我在浏览器中打开项目时,我收到一条错误消息:
Compiler Error Message: CS0234: The type or namespace name 'Ajax' does not exist in the namespace 'System.Web.Mvc' (are you missing an assembly reference?)
Source Error:
Line 22: using System.Web.WebPages;
Line 23: using System.Web.Mvc;
Line 24: using System.Web.Mvc.Ajax;
Line 25: using System.Web.Mvc.Html;
Line 26: using System.Web.Routing;
经过一些谷歌搜索i found out,您必须将“复制本地”更改为true,但我看到它已在我的项目中设置为true。即使在清理和重建之后,此错误仍然存在。
那么有没有人知道可能导致此错误的原因?
答案 0 :(得分:88)
我认为您正在引用旧版本的System.Web。右键单击vs中的项目并选择“Manage NuGet Packages”,然后搜索Asp.Net MVC并单击“安装”。这将使用Ajax安装正确的System.Web。如果不需要,您可以删除下载的其他六个二进制文件。
答案 1 :(得分:16)
使用MVC 5.2.3,我遇到了同样的问题;它是突如其来的(这个错误来自于没有进行任何更改的任何地方,因为该应用程序正在编译并且之前运行顺利)
<强>修正:强>
答案 2 :(得分:4)
在NuGet程序包管理器控制台中运行Install-Package Microsoft.AspNet.Mvc
对我有用。
答案 3 :(得分:1)
将System.Web.MVC CopyLocal设置为True 这对我有帮助
答案 4 :(得分:0)
以管理员模式重新打开Visual Studio。
答案 5 :(得分:0)
我从NuGet包管理器控制台更新了MVC并解决了我的问题
答案 6 :(得分:0)
右键单击解决方案,然后选择&#34;管理解决方案的NuGet包&#34; 选择“卸载”按钮卸载ASP.NET MVC 取消选择使用ASP.NET MVC的项目 - 单击“确定” 现在通过在Online选项卡下的NuGet窗口中找到它来安装ASP.net MVC,并为之前取消选择的项目安装它 这应该解决问题,因为它对我来说。享受!
答案 7 :(得分:0)