有没有办法让Visual Studio(我使用2010)在构建期间在剃刀视图中查找错误,就像C#项目中的其他代码一样?
您可以检查代码中的任何错误并认为一切都很好,这只是一种痛苦,但看起来您无法确定视图,除非您通过每个视图。
BTW我显然不在我的视图中编码 - 我只是在谈论HTML或URL扩展方法。
答案 0 :(得分:93)
尝试在项目文件中将MVCBuildViews设置为true(即编辑csproj文件)
<MvcBuildViews>true</MvcBuildViews>
答案 1 :(得分: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>
顶级PropertyGroup中的MvcBuildViews元素是由VS在项目创建时添加的,我手动添加了特定于构建配置的一个(底部PropertyGroup)
答案 2 :(得分:0)
尝试在项目的模式编辑中添加以下程序集: System.core ,根据代码:
...
<Reference Include="System.Core, Version=4.0.0.0" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Net.Http.WebRequest" />
...
有时这个汇编程序没有正确加载,在我的情况下,它有效!