问题描述
|
Visual Studio(我正在使用2010)是否可以像在C#项目中的其他代码一样在构建过程中在剃刀视图中查找错误?
您可以检查代码中的任何错误并认为一切都很好,这很痛苦,但是似乎您无法确定视图,除非您仔细查看每个视图。
顺便说一句,我显然不在自己的视图中编写代码-例如,我只是在谈论HTML或URL扩展方法。
解决方法
尝试在项目文件中将MVCBuildViews设置为true(即,编辑csproj文件)
<MvcBuildViews>true</MvcBuildViews>
,构建视图需要花费一些时间,而花10秒钟以上的时间进行调试构建会变得很烦人,因此我通常只在发布类型的构建配置中将MvcBuildViews设置为true。
这样,如果您拥有构建服务器,它将为您捕获错误,或者您可以不时手动运行发行版本,然后检查您的视图。
我认为PropertyGroup元素的顺序无关紧要,但是对于一个更完整的示例,我在MvcBuildViews元素上方和下方包括了元素。
<PropertyGroup>
<Configuration Condition=\" \'$(Configuration)\' == \'\' \">Debug</Configuration>
<Platform Condition=\" \'$(Platform)\' == \'\' \">AnyCPU</Platform>
...
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<MvcBuildViews>false</MvcBuildViews>
<UseIISExpress>false</UseIISExpress>
...
</PropertyGroup>
<PropertyGroup Condition=\" \'$(Configuration)|$(Platform)\' == \'Release|AnyCPU\' \">
...
<ErrorReport>prompt</ErrorReport>
<MvcBuildViews>true</MvcBuildViews>
<WarningLevel>4</WarningLevel>
...
</PropertyGroup>
VS在项目创建时添加了顶部PropertyGroup中的MvcBuildViews元素,我手动添加了特定于构建配置的一个(底部PropertyGroup)
,尝试根据以下代码在项目的方式编辑中添加以下程序集:System.core:
...
<Reference Include=\"System.Core,Version=4.0.0.0\" />
<Reference Include=\"System.Net.Http\" />
<Reference Include=\"System.Net.Http.WebRequest\" />
...
有时,该汇编器无法正确加载,就我而言,它可以工作!