在 .net 核心中编译剃刀视图

compile razor views in .net core

有没有一种方法可以在我需要的时候随时编译我所有的剃刀视图(以验证)?我找到了这个文档,它展示了它是如何在发布时编译的 https://docs.microsoft.com/en-us/aspnet/core/mvc/views/view-compilation?view=aspnetcore-2.1&tabs=aspnetcore2x

我正在 visual studio 中寻找一个选项,或者通过 CLI 更好地编译和验证所有视图。我确实在预览版中找到了这个官方 Razor CLI 工具,但没有文档:https://www.nuget.org/packages/Microsoft.AspNetCore.Razor.Tools/1.1.0-preview4-final

好吧,您可以随时发布。 “发布”这个名称并不意味着“将我的网站推向 public 意见的竞技场”:-)

它所做的一切都保留在本地,dotnet publish 默认情况下会在您的项目 bin 文件夹下创建一个目录,如您所说,其中包含编译视图和其他工件。

根据 this comment,使用 .NET core 2.1,您可以在构建时编译 razor 视图而无需发布,方法是将这两行添加到项目文件的 <PropertyGroup> 部分:

<RazorCompileOnBuild>true</RazorCompileOnBuild>
<ResolvedRazorCompileToolset>RazorSdk</ResolvedRazorCompileToolset>

这将使它们编译成 [项目]。Views.dll,并且您将不再需要分发 cshtml 文件。