Joe*_*tte 30
编辑your.csproj文件并将PreserveCompilationContext添加为true,将MvcRazorCompileOnPublish添加为false
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
<PreserveCompilationContext>true</PreserveCompilationContext>
<MvcRazorCompileOnPublish>false</MvcRazorCompileOnPublish>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
然后视图将包含在发布中
编辑:从版本2.1开始,不可能使用Razor类库,而不是嵌入视图,它们可以预编译.Web应用程序中的本地视图仍可覆盖类库中的视图.在新方案中,您将删除PreserveCompilationContext和MvcRazorCompileOnPublish设置,并使用默认值.这样,应用程序中的所有视图都将被预编译,并且发布输出中不会包含.cshtml文件.
Joe 的回答是针对 .Net Core 2 的。
在 .Net Core 3 中,如果您在 Startup.cs 中使用默认 services.AddControllersWithViews() 那么您需要使用 RazorCompileOnPublish。
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<PreserveCompilationContext>true</PreserveCompilationContext>
<RazorCompileOnPublish>false</RazorCompileOnPublish>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
此外,如果您需要在 Core 3 中启用 Razor 运行时编译,则需要安装“Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation”包,然后添加 AddRazorRuntimeCompilation。
services.AddControllersWithViews()
.AddRazorRuntimeCompilation();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5676 次 |
| 最近记录: |