ASP.NET MVC3,启用Razor

9
我已将MVC2项目升级为MVC3,并想开始使用Razor视图引擎,但当我进行Add->View时,没有选项可以选择视图引擎。
我已更新了视图文件夹中的Web.config,并与新的MVC 3项目进行了比较,但没有任何效果。
有什么想法吗?
2个回答

10

我通过将.csproj文件中的ProjectTypeGuids元素更改为以下内容来解决了此问题:

<ProjectTypeGuids>{E53F8FEA-EAE0-44A6-8774-FFD645390401};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>

我现在可以选择Razor或ASPX作为我的视图引擎。


1
不要像我一样注释掉现有的ProjectTypeGuids,然后在下面添加新的。如果你这样做,它根本不起作用,而且会出现主页面对话框。卸载项目,完全删除旧行,重新加载,然后在选择“添加视图”时就可以得到Razor视图对话框提示了。 - Paul George

1
你在创建新的MVC3项目时是否有选项来创建razor视图?
我从2升级到3的方法是:在同一解决方案中创建一个新的MVC3项目;然后直接从我的MVC2项目复制控制器、视图和任何需要的帮助程序。
这样可以避免大量的csproj和web.config文件操作。
默认情况下,aspx和ascx页面将在cshtml之前被找到,因此请确保在处理任何命名相同且想要查看其工作情况的razor视图时已将它们删除。

谢谢,这可能是个更简单的方法来做 :) - Rob Stevenson-Leggett
另一个更简单的选择是使用MVC3项目升级工具:http://blogs.msdn.com/b/marcinon/archive/2011/01/13/mvc-3-project-upgrade-tool.aspx - Jason Capriotti

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接