.net core mvc 项目修改cshtml页面后,需要重新编译才能生效;
一下解决此问题的方案:
并且在发布时不包含此环境
1、Nuget安装 Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation
2、Setup.cs 中
public Startup(IConfiguration configuration, IWebHostEnvironment env)
{
Configuration = configuration; Env = env;
}
public IWebHostEnvironment Env { get; set; }
public IConfiguration Configuration { get; }
// This method gets called by the runtime. Use this method to add services to the container.public void ConfigureServices(IServiceCollection services)
{
IMvcBuilder mvcBuilder = services.AddControllersWithViews();
#if DEBUG
if (Env.IsDevelopment())
mvcBuilder.AddRazorRuntimeCompilation();
#endif
services.AddControllersWithViews();
}
3、项目类库文件中修改,发布时不要包含这些内容
<PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" Version="3.1.10" Condition="'$(Configuration)' == 'Debug'"/>