编译 MVC View

默认MVC的 View页面 不参与编译,当更改view对应model后,view编译也能通过,或者页面有错误的服务端代码时也不会报错。

那么如何在编译的时候能让View中的错误也不能通过呢。经过查找找到了方法,本机MVC5.0 适用,其他版本未试。

当然,开启这个后,会对编译速度有一定影响,每次生成项目都会慢一点。

方法:

一、修改 .csproj 工程文件,用txt记事本打开。

二、找到<Project>节点在<PropertyGroup>最前面加入<MvcBuildViews>true</MvcBuildViews>。

<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<MvcBuildViews>true</MvcBuildViews>
</PropertyGroup>

三、在工程文件最下面,取消<Target Name="AfterBuild">注释,并加入如下属性:

<Target Name="AfterBuild" Condition="'$(MvcBuildViews)'=='true'">
<AspNetCompiler VirtualPath="temp" PhysicalPath="$(ProjectDir)\..\$(ProjectName)" />
</Target>

搞定。实测效果如图:

修改工程前不报错,正常编译;

修改工程后:

编译 MVC View

以后不小心改了页面什么东西,或者后台model,通用方法后,就能知道关联页面哪有哪些了。

还有一种方法在nuget中引入RazorGenerator 。

参考:http://*.com/questions/383192/compile-views-in-asp-net-mvc

上一篇:127.0.0.1 之本机网络通信过程知多少 ?!


下一篇:css清除浮动解决方案