我是asp.net mvc的新手。我在.cshtml页面上看到一些剃刀代码中有令人讨厌的小红色下划线,错误列表中有错误,但项目仍在构建中。如果出现这些错误,我可以以某种方式使项目构建失败吗?
顺便说一句,如果我在剃刀页面中引用的c#类中重命名变量,为什么重构工具不会将其范围扩展到cshtml文件?
答案 0 :(得分:28)
您需要在项目中设置在构建期间编译视图。
在MVC项目中设置:
<MvcBuildViews>true</MvcBuildViews>
您只需卸载或关闭Visual Studio中的mvc项目,编辑.cspoj
文件(在VS或记事本或您喜欢的编辑器中),找到{{1}并将值更改为<MvcBuildViews>
。
答案 1 :(得分:4)
使用MvcBuildViews设置仅对Release版本可能是明智的,假设您的构建过程在部署之前使用Release版本。这将消除在开发和调试时编译视图的额外等待,但在部署之前仍会检查到位。将MvcBuildViews节点添加到PropertyGroup节点,仅用于Release版本。它看起来像这样:
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'">
<MvcBuildViews>true</MvcBuildViews>
</PropertyGroup>
http://blog.falafel.com/get-compile-time-view-errors-in-asp-net-mvc/