asp.net core mvc razor动态编译

开发mvc过程中razor页面需要重启才能编译,非常麻烦,能否实现动态编译,微软官方提供了一个包能实现

新建.net 6 mvc项目

安装Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation

修改csproj

xml 复制代码
<Project Sdk="Microsoft.NET.Sdk.Web">
    <PropertyGroup>
	    <!--下面两行代码是生产环境使用需要添加,测试环境无需处理csproj-->
        <MvcRazorCompileOnPublish>false</MvcRazorCompileOnPublish>
        <RazorCompileOnBuild>false</RazorCompileOnBuild>
    </PropertyGroup>
</Project>

修改program.cs

cs 复制代码
namespace WebApplication2;

public class Program
{
    public static void Main(string[] args)
    {
        var builder = WebApplication.CreateBuilder(args);
        var mvcBuilder = builder.Services.AddControllersWithViews();
        //核心代码在这
        if (builder.Environment.IsDevelopment())
        {
            //添加razor页面动态编译
            mvcBuilder.AddRazorRuntimeCompilation();
        }
        var app = builder.Build();
        app.UseRouting();
        app.MapControllerRoute(
            name: "default",
            pattern: "{controller=Home}/{action=Index}/{id?}");
        app.Run();
    }
}

目前测试.net8不行

参考

https://github.com/dotnet/aspnetcore/issues/52248
https://techcommunity.microsoft.com/t5/net-runtime/net-8-0-2-update-causes-asp-net-core-mvc-index-view-not-found/m-p/4058976
https://cloud.tencent.com/developer/article/1020241
https://learn.microsoft.com/zh-cn/aspnet/core/mvc/views/view-compilation?view=aspnetcore-8.0&tabs=visual-studio
https://www.cnblogs.com/rupeng/p/15872803.html

相关推荐
武子康1 小时前
Java-80 深入浅出 RPC Dubbo 动态服务降级:从雪崩防护到配置中心秒级生效
java·分布式·后端·spring·微服务·rpc·dubbo
舒一笑1 小时前
我的开源项目-PandaCoder迎来史诗级大更新啦
后端·程序员·intellij idea
@昵称不存在2 小时前
Flask input 和datalist结合
后端·python·flask
zhuyasen3 小时前
Go 分布式任务和定时任务太难?sasynq 让异步任务从未如此简单
后端·go
东林牧之3 小时前
Django+celery异步:拿来即用,可移植性高
后端·python·django
超浪的晨4 小时前
Java UDP 通信详解:从基础到实战,彻底掌握无连接网络编程
java·开发语言·后端·学习·个人开发
AntBlack4 小时前
从小不学好 ,影刀 + ddddocr 实现图片验证码认证自动化
后端·python·计算机视觉
Pomelo_刘金5 小时前
Clean Architecture 整洁架构:借一只闹钟讲明白「整洁架构」的来龙去脉
后端·架构·rust
双力臂4045 小时前
Spring Boot 单元测试进阶:JUnit5 + Mock测试与切片测试实战及覆盖率报告生成
java·spring boot·后端·单元测试
midsummer_woo6 小时前
基于spring boot的医院挂号就诊系统(源码+论文)
java·spring boot·后端