我需要在每个.MapGet()
之后以相同的方式操作JSON(应用一些转换).
我一直认为,我们可以在响应管道和请求管道上设置中间件,方法是在.MapGet()
之后放置.UseMiddleware()
(或.Use()
),如下所示:
[...]
app.UseMiddleware<MyRequestMiddleware>(); //It should be invoked before .MapGet()
app.MapGet(...);
app.UseMiddleware<MyResponseMiddleware>(); //It should be invoked after .MapGet()
await app.RunAsync();
实际上,MyRequestMiddleware
和MyResponseMiddleware
都是在.MapGet()
之前运行的流水线.如何实现"响应管道", for each 端点运行一些转换函数?我知道我可以创建注入DI的服务并调用每个端点中的转换,但我不想更改.MapGet()
个实现并将转换分离在另一个层中.