首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ASP.NET4和ASP.NET5 Http管道有什么区别?

ASP.NET4和ASP.NET5 Http管道有什么区别?
EN

Stack Overflow用户
提问于 2014-12-04 13:18:04
回答 1查看 499关注 0票数 3

我已经阅读了.NET4.6中的新内容,以及我非常兴奋的是ASP.NET 5中的一个内容。

其中一个新的东西是New modular HTTP request pipeline,但是没有更多的信息来说明它到底会发生什么变化。

唯一的这篇文章的参考是

ASP.NET 5引入了一个新的HTTP管道,它既简洁又快速。这个管道是模块化的,所以你只能添加你需要的组件。通过减少管道中的开销,您的应用程序将体验到更好的吞吐量。新的管道也支持OWIN。

ASP.NET 4.5和ASP.NET5 Http管道的主要区别是什么?如何控制模块化?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-13 10:43:42

在我看来,最大的不同是新请求管道的模块化。在过去,应用程序生命周期遵循一条相对严格的路径,您可以通过实现IHttpModule.的类连接到该路径--这将允许您影响请求,但只能在此过程中订阅发生的不同事件(例如,BeginRequest,AuthenticateRequest,等)。

这些模块的完整描述可以在MSDN:IIS 5和6IIS 7上找到,创建这样一个模块的演练可以是在这里找到的。

在新的ASP.NET 5世界中,请求管道与System.Web和IIS分离。它没有使用预定义的路径,而是使用中间件的概念。如果您熟悉奥林,想法是几乎相同,但基本思想是注册这些中间件组件,然后按注册顺序传递请求。

每个中间件组件都提供一个RequestDelegate (管道中的下一个中间件组件)和当前的每个请求的HttpContext。对于每个请求,将调用组件,然后有机会将请求传递到链中的下一个(如果适用的话)。例如,如果身份验证失败,身份验证组件可能选择不将请求传递给下一个组件。使用这个系统,你可以用任何你选择的方式来处理一个请求,并且可以像你所需要的那样轻量级或功能丰富。

这个例子现在有点过时了(例如,IBuilder 已被重命名IApplicationBuilder),但它仍然是构建和注册这些组件的一个很好的概述。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27295062

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档