.Net Core项目设置cshtml不编译到dll,不经过iis,用dotnet run 运行\bin\Debug\net5.0目录下的xxx.dll 要把Pages或Views中cshtml文件和wwwroot静态文件复制到\bin\Debug\net5.0目录中才能正常运行
这样在开发阶段就很麻烦 每次修改cshtml和t静态文件 都得复制一下 ,除非用vs IIS Express调试运行(这样影响其他人通过ip访问),或者项目“发布”一下(文件多了速度慢)
有没有办法像.net framework的webform项目那样,只需在修改c#代码时编译一下,其他html代码和静态文件修改都不需要复制到Debug目录?
ps:.net framework的mvc项目也需要像net core的复制。
目前已知是不能直接。
但基于从tcp构建过mvc的知识经验认为是可以做到:
1.监控文件;
2.IActionResult实现(缓存动态编译Razor Page)
通过文件变化,清空或替换编译的Razor缓存,再将编译或者缓存得到的 IActionResult返回。
可以使用 dotnet watcch
命令