ASP.NET Core MVC中间件简单案例

时间:2019-01-17 11:05:27

标签: c# asp.net-core

我正在努力围绕Asp.Net核心MVC的中间件概念。

我了解以下两个相同。

app.Use(next => next);

app.Use(next => { return next; });

现在,我想了解以下内容是否相同。如果可以的话。

app.Use(next => 
{
    return async context =>
    {
        await next(context);
    };
});

没有编译时错误。

1 个答案:

答案 0 :(得分:2)

尽管它们确实产生相同的结果,但从技术上来说还是有细微的差异。通过添加额外的async方法,将创建一个额外的状态机,该状态机不会引起性能上的重大变化,但是值得考虑。

基本上,这与this question中的问题非常相似。