在.net 6中实时更新.cshtml页面的配置
1.要用NutGet下载并安装Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation 6.0.1
2.修改Properties\launchSettings.json文件
1 { 2 "iisSettings": { 3 "windowsAuthentication": false, 4 "anonymousAuthentication": true, 5 "iisExpress": { 6 "applicationUrl": "http://localhost:30630", 7 "sslPort": 44345 8 } 9 }, 10 "profiles": { 11 "NetCoreSixDemo": { 12 "commandName": "Project", 13 "dotnetRunMessages": true, 14 "launchBrowser": true, 15 "applicationUrl": "https://localhost:7137;http://localhost:5137", 16 "environmentVariables": { 17 "ASPNETCORE_ENVIRONMENT": "Development", 18 "ASPNETCORE_HOSTINGSTARTUPASSEMBLIES": "Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" 19 } 20 }, 21 "IIS Express": { 22 "commandName": "IISExpress", 23 "launchBrowser": true, 24 "environmentVariables": { 25 "ASPNETCORE_ENVIRONMENT": "Development", 26 "ASPNETCORE_HOSTINGSTARTUPASSEMBLIES": "Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" 27 } 28 } 29 } 30 }
这两个地方都加,这样不管是用哪种容器,都可以生效。
至于startup里的services.AddControllersWithViews().AddRazorRuntimeCompilation(),是不用加的(加了也没用)
参考:Razor文件编译 ASP.NET Core 中的 Razor 文件编译 | Microsoft Docs
中【有条件地启用现有项目中的运行时编译】一节。
好了,这样启动了项目后,可以直接在Vs里修改一个cshtml文件,再刷新浏览器,就可以看到刷新了。

浙公网安备 33010602011771号