我最近安装了vs 2013专业版,并在其中打开了我的一个侧面项目应用程序。该项目是使用剃刀视图引擎的MVC3应用程序。我注意到在编辑视图(cshtml)时,我无法访问我在2012年习惯的intellisense。我立即注意到的例子是@ Url.Content()和@Viewbag。代码仍然编译并运行,只是没有intellisense。在搞砸了一下之后,我想我应该检查一下升级日志,确定我找到了......
“用于Razor的Intellisense(CSHTML和VBHTML)文件仅限于HTML标记。有关如何升级MVC 3项目的其他信息,请参阅http://go.microsoft.com/fwlink/?LinkID=317645。”
提供的链接只是告诉您从mvc3升级到mvc4。我的问题是:这是我唯一的选择吗?为了在较旧的mvc3项目上使用VS2013,我将不得不升级它们或者vs2013是否支持mvc razor文件上的完整intellisense?
答案 0 :(得分:19)
在这里找到了......
很快你会在VS2013中看到新版本的MVC5。 MVC5将被纳入VS2013。 VS2013不支持MVC3。我上次在channel9上确认了它。因此,仅安装了VS2013或者没有旧版本的人将会遇到仍处于MVC3中的项目的问题。发生此错误的原因是MVC4和5安装不包含ASP.NET MVC第3版中使用的DLL。
结束将项目升级到MVC 5 ...创建了一个新项目并将我的模型,视图和控制器文件夹的所有内容都带了出来。还必须更新webconfig以包含我在上一个项目中安装的一些软件包。
答案 1 :(得分:13)
在每个视图中添加这两行:
@inherits System.Web.Mvc.WebViewPage<dynamic>
@using System.Web.Mvc.Html
并且intellisense将再次用于VS2013中的MVC3
答案 2 :(得分:3)
您可以尝试从解决方案资源管理器中卸载项目并重新重新加载。看看你是否可以恢复你的智力感知。它对我有用。
答案 3 :(得分:0)
1-从工具中选择Nuget包管理器控制台 2-使用这个下载system.web.mvc 3 PM&GT; 安装包Microsoft.AspNet.Mvc -Version 3.0.20105.1