ASP.NET Core的老用户最近集体破防。一位写了4年传统控制器的开发者,把整套API重写成Minimal APIs,结果文件体积砍了60%,启动速度快了将近一倍。

Minimal APIs是微软2021年憋出来的新玩法,当时被吐槽"这玩意儿能写生产代码?"传统写法得先建Controller类、再写路由、再绑依赖注入,像去银行办业务要填三张表。新写法把路由、逻辑、返回全揉进一个lambda,三行代码顶过去三十行。

这位开发者原本也不信邪。他的项目有47个Controller,200多个Action方法,迁移前做好了"周末泡汤"的心理准备。实际动手发现,90%的接口能直接平移,复杂点的把服务抽出来就行。「最爽的是删文件的那一刻,整个Controllers文件夹直接进回收站。」

性能数据让团队愣住。冷启动时间从2.3秒掉到1.4秒,内存占用少了40%。不是Minimal APIs本身多快,是少了反射扫描Controller的那层包袱。Docker镜像也跟着瘦身,CI/CD管道跑得比原来快了一截。

代价当然也有。Minimal APIs把路由和逻辑焊在一起,项目大了容易长成一坨。这位开发者的妥协方案是:简单CRUD用Minimal,复杂业务还是拆服务层。他的GitHub仓库现在挂着两个分支,传统写法留作"考古现场"。

微软官方文档的示例代码,去年偷偷把默认推荐改成了Minimal APIs。有开发者在Issue里吐槽:"你们4年前可不是这么说的。"