我想要一个msbuild任务来编译视图,这样我就可以看到编译时是否存在编译错误...编译时.有任何想法吗?
System.Web.HttpCompileException
当我的观点呼唤时,我得到了一个Html.RederPartial
.异常消息是:
附加信息:外部组件抛出异常.
我检查过:
Model
由控制器传递和接收的观点是相同的.InnerException
为空异常听起来应该是html或razor格式错误或不正确,但解决方案构建正常.它不久前也在工作,所以我猜,我错过了一些愚蠢的东西......
我的问题:
有谁知道如何知道导致此异常的原因?或者有没有办法获得有关异常的更多信息?
编辑:这是StackTrace
位于System.Web.Compilation.Compilation上的System.Web.Compilation.BuildProvidersCompiler.PerformBuild()的System.Web.Compilation.AssemblyBuilder.Compile(),System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath)上的System.Web.Compilation.BuildManager.CompileWebFile(VirtualPath虚拟路径) virtualPath,Boolean noBuild,Boolean ...
默认情况下,Visual Studio仅检查CSHTML文件上的构建错误(如果它们在构建时打开).我想在构建闭包CSHTML文件的同时实现这一点.
我在这篇文章中看到过:如何在运行时或本帖之前编译cshtml
解决方案很简单,只需在csproj文件中设置:
<MvcBuildViews>true</MvcBuildViews>
Run Code Online (Sandbox Code Playgroud)
不幸的是,这开始引发它在临时文件夹中生成的cs文件中的错误.cs文件是转换后的cs html文件,并且它们本身不可编译,因此我得到了各种实际上不存在的构建错误.
我目前的解决方案是我将MvcBuildViews设置为false,然后在构建之前手动打开项目中的所有CSHTML文件.
有没有修复跳过临时文件,或者打开所有CSHTML文件的方法更有效?