ASP.NET Core 3.0 端点路由和自定义中间件

ASP.NET Core 3.0 endpoint routing and custom middlewares

在 .NET 3.0 中用终结点路由替换这段代码的原因是什么?

app.UseRouter(a => a.MapMiddlewareGet(
    "middleware1",
    b => b.UseMiddleware<Middleware1>()));

还是应该这样保留:

app.UseRouter(a => a.MapMiddlewareGet(
    "middleware1",
    b => b.UseMiddleware<Middleware1>()));
app.UseEndpoints(a => a.MapControllers());

我认为以下代码对您有所帮助。我已经测试过,它正在工作。

app.UseEndpoints(endpoints =>
{
    var newAppbuilder = endpoints.CreateApplicationBuilder();
    newAppbuilder.UseMiddleware<Middleware1>();

    endpoints.MapGet("middleware1", newAppbuilder.Build());
});