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

5

如何使用终结点路由在.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());

我也很想知道这个,文档混乱不堪,而且在3.0文档中仍然几乎到处都使用已弃用的语法... - Douglas Gaskell
1个回答

1

我认为以下代码可以帮助你。我已经测试过,它可以正常工作。

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

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

我已经在 aspnetcore 的 Github 上创建了一个问题。您可以支持功能请求。https://github.com/aspnet/AspNetCore/issues/14514 - pavinan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接