Razor语法突出显示无法在VS 2012中使用MVC 5

And*_*eas 47 c# razor visual-studio-2012 visual-studio-2013 asp.net-mvc-5

我正在使用Visual Studio 2013 RC中的MVC 5 RC 1.效果很好.

现在我将VS 2012中的现有MVC 4项目升级到MVC 5,方法与此处描述的相同

我还更改了web.config(s) - 请参阅" 从MVC4升级到MVC5 "

除了在视图中突出显示Razor/C#代码之外,所有内容(构建,运行Web应用程序,甚至智能感知)都能正常工作.

我还尝试了在VS 2013中创建的MVC 5项目.结果相同.所以我假设VS 2012没有"理解"新组件?!

任何已知的解决方法或想法可以突出显示?

And*_*eas 75

Microsoft发布了适用于VS 2012的新版ASP.NET Web Tools.安装语法高亮后再次返回.

http://blogs.msdn.com/b/webdev/archive/2013/11/18/announcing-release-of-asp-net-and-web-tools-2013-1-for-visual-studio-2012. ASPX

安装VS 2012 Update 4还不够.

提供了一组脱机安装程序.离线安装程序比Web平台工具调用程序(WebNode11Pack.exe @ ~114KB)更易于使用:

如果您需要离线安装程序,请转到http://www.microsoft.com/en-us/download/details.aspx?id=41532

  • AspNetWebTools2013_1Setup.exe @~39MB
  • WebToolsExtensionsVS.msi(适用于Visual Studio 2012 标准版[s])@~21MB
  • WebToolsExtensionsVWD.msi(适用于Visual Studio 2012 免费"Web"版[s])@~ 21MB


hat*_*ode 16

用于Visual Studio 2012的ASP.NET和Web Tools 2013.1现已发布,应解决VS 2012的MVC5 intellisense问题.

此版本带来了大量改进,包括对Visual Studio 2012和Visual Studio 2012 Express for Web用户的ASP.NET MVC 5,Web API 2,脚手架和实体框架的一些出色增强.

您可以下载更新:http://blogs.msdn.com/b/webdev/archive/2013/11/18/announcing-release-of-asp-net-and-web-tools-2013-1-for-视觉工作室2012.aspx

致主持人:这可能只是一个下载链接,但这解决了这个问题,它对我有用,并且对投票给这个答案的用户起了作用.如果你要删除它,请提供理由,谢谢!


fli*_*art 9

这个答案声称VS2012无法理解Razor 3,所以你(和我)将不得不升级到VS2013


Kna*_*ģis 6

我目前正在使用一种解决方法来使智能感知在VS2012中工作(我假设这不能正常工作)如果我在同一个项目中使用VS2013; b)如果我尝试使用Razor 3功能):

将web.config更改为使用旧webpages版本:

<add key="webpages:Version" value="2.0.0.0" />
Run Code Online (Sandbox Code Playgroud)

为了确保这不会以任何方式影响生产,我添加了一个web.config转换:

<add key="webpages:Version" value="3.0.0.0" xdt:Transform="SetAttributes" xdt:Locator="Match(key)" />
Run Code Online (Sandbox Code Playgroud)

不幸的是,这种解决方法存在问题(到目前为止我已经注意到了):

  • 扩展方法(如未Html.RenderPartial()识别并在设计器中显示为错误).


Kna*_*ģis 6

我得到了微软开发人员的回答:

VS 2012的MVC 5/Razor 3工具支持尚未发布.我们希望在11月中旬发布此支持.

所以现在接受的答案是正确的,但我们也可以计划很快在VS2012中得到这种支持.

  • 我今天安装了VS2012 Update 4,它还没有修复它. (10认同)