Dan*_*ler 7 c# asp.net-mvc razor
默认情况下,Visual Studio仅检查CSHTML文件上的构建错误(如果它们在构建时打开).我想在构建闭包CSHTML文件的同时实现这一点.
我在这篇文章中看到过:如何在运行时或本帖之前编译cshtml
解决方案很简单,只需在csproj文件中设置:
<MvcBuildViews>true</MvcBuildViews>
Run Code Online (Sandbox Code Playgroud)
不幸的是,这开始引发它在临时文件夹中生成的cs文件中的错误.cs文件是转换后的cs html文件,并且它们本身不可编译,因此我得到了各种实际上不存在的构建错误.
我目前的解决方案是我将MvcBuildViews设置为false,然后在构建之前手动打开项目中的所有CSHTML文件.
有没有修复跳过临时文件,或者打开所有CSHTML文件的方法更有效?
是否有跳过临时文件的修复方法,或者比打开所有 CSHTML 文件更有效的方法?
唯一支持的方式是<MvcBuildViews>
项目配置元素。它得到了 MsBuild 的支持,允许无人值守的构建工作。这是检查视图中构建错误的最有效方法。
cs文件是转换后的cs html文件
这意味着什么?视图是vbhtml
或cshtml
。没有任何意见.cs
。
如果不添加正确的配置元素(如下),当cshtml
文件转换为.cs
(中间文件)然后编译时,您可能会遇到一些奇怪的错误。
不幸的是,这开始在临时文件夹中生成的 cs 文件中引发错误。
使用以下方法有很多答案 ( 1 2 3 4 )<MvcBuildViews>
) 。
关于 MVC 项目(实际上是一般的 Web 项目)需要了解的重要一点是,每个视图都默认编译在项目的 obj/bin 目录中。该问题通常存在于 IIS 和 IIS Express 尝试再次编译视图时,而视图已经存在。因此,上面列出的修复将编译目录更改为项目外部的目录。
归档时间: |
|
查看次数: |
1365 次 |
最近记录: |