如何在运行时之前编译cshtml

Fat*_*ers 49 asp.net-mvc razor jquery-mobile

我相信我在某个地方读到了一个项目文件中的设置,它允许您.cshtml在构建Visual Studio项目时编译文件.

刚开始使用MVC/Razor/QueryMobile,当我在.cshtml文件中的代码块中出错时,我对"错误加载页面"感到恼火

Lev*_*lho 70

设置.csproj文件<MvcBuildViews>true</MvcBuildViews><PropertyGroup>元素.


kar*_* li 13

除了真实设置,您还需要确保在csproj中激活以下设置:

<Target Name="MvcBuildViews" AfterTargets="AfterBuild" Condition="'$(MvcBuildViews)'=='true'">
<AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" />
</Target>
Run Code Online (Sandbox Code Playgroud)


Gia*_*tti 5

MvcBuildViews经常被错误地使用,因为它不会按照您想要的方式预编译视图。

\n

MvcBuildViews 临时构建视图,并将构建结果返回给构建过程,以在 VS 错误窗口中显示可能的构建错误。

\n

为了实现生产版本的视图的真正预编译,您必须在Publish Web App中正确设置特定值项目的“

\n

有关如何通过 Visual Studio 执行此操作的主要文章请参阅此处,请参阅此处深入了解如何通过 msBuild 和 Azure 执行此操作。

\n

更新

\n

简而言之,使用 Visual Studio,您必须将发布窗口配置为:

\n

主发布窗口

\n

\n

高级配置窗口

\n