ASP.NET Core 3.1 Razor 視圖預編譯、動態編譯
1.安裝NuGet包
Install-Package Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation
2.Startup.cs 配置
public void ConfigureServices(IServiceCollection services)
{
services.AddRazorPages() .AddRazorRuntimeCompilation();
}
<PropertyGroup> <TargetFramework>netcoreapp3.1</TargetFramework>
<RazorCompileOnBuild>false</RazorCompileOnBuild>
<MvcRazorCompileOnPublish>false</MvcRazorCompileOnPublish>
</PropertyGroup>
通過上述程式碼我們可以在生產環境中也可以進行動態編譯,當然我們可以通過條件來限制.
public IWebHostEnvironment Env { get; set; }
public void ConfigureServices(IServiceCollection services)
{
IMvcBuilder builder = services.AddRazorPages();
#if DEBUG
if (Env.IsDevelopment())
{
builder.AddRazorRuntimeCompilation();
}
#endif
}