在构建期间检查剃刀错误

isN*_*247 65 c# visual-studio razor

有没有办法让Visual Studio(我使用2010)在构建期间在剃刀视图中查找错误,就像C#项目中的其他代码一样?

您可以检查代码中的任何错误并认为一切都很好,这只是一种痛苦,但看起来您无法确定视图,除非您通过每个视图.

顺便说一句,我显然不在我的视图中编码 - 我只是在谈论HTML或URL扩展方法.

JP.*_*JP. 94

尝试在项目文件中将MVCBuildViews设置为true(即编辑csproj文件)

 <MvcBuildViews>true</MvcBuildViews>
Run Code Online (Sandbox Code Playgroud)

  • 对我来说很奇怪,这在现有的属性组中不起作用。它仅在我为其创建特定属性组时才起作用,即`&lt;PropertyGroup&gt; &lt;MvcBuildViews&gt;true&lt;/MvcBuildViews&gt; &lt;/PropertyGroup&gt;` (2认同)

Tik*_*all 12

构建视图需要一段时间,执行调试构建的额外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>
Run Code Online (Sandbox Code Playgroud)

顶级PropertyGroup中的MvcBuildViews元素是由VS在项目创建时添加的,我手动添加了特定于构建配置的一个(底部PropertyGroup)