Minimal API 很像“轻量快办窗口”。它的特点是:
- 开得快。
- 写得少。
- 适合小型接口、内部服务、原型、轻量网关。
app.MapPost("/appointments", async (
AppointmentRequest request,
IAppointmentService service,
ILogger<Program> logger) =>
{
var result = await service.CreateAsync(request);
logger.LogInformation(
"预约创建成功,CitizenId={CitizenId}, AppointmentId={AppointmentId}",
request.CitizenId,
result.Id);
return Results.Created($"/appointments/{result.Id}", result);
});这段代码很值得观察,因为它体现了 Minimal API 的一个强项:
request:从请求体绑定。service:从依赖注入容器拿。logger:也是从依赖注入容器拿。
也就是说,一个窗口函数的参数,不只是“用户提交的数据”,还可以直接接上枢纽内部部门。
#Minimal API 适合什么时候
- 接口数量不大。
- 团队偏后端工程化,不追求 MVC 风格层次。
- 想快速搭建服务。
- 较多内部系统、BFF、网关、工具型接口。
它像国家枢纽里的“自助快办区”,效率很高,但复杂流程多了之后,管理性会逐渐下降。