博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【图解ASP.NET MVC运行机制理解-简易版】
阅读量:7105 次
发布时间:2019-06-28

本文共 991 字,大约阅读时间需要 3 分钟。

很多盆友咨询ASP.NET MVC的机制。网上也有好多。但是都是相当深奥。看的云里雾里的。我今天抽空,整理个简易版本。把处理流程走一遍。

当然,这个只是处理请求的一部分环节。百度的面试题“客户端从浏览器发送一个请求,要经过哪些路程。。。”看似简单的问题,问的很有深度。

 

我们不关注 从客户端HTTP->TCP->DNS->Server->Application->..................Client  这个完整的路线和插曲。我们就看看程序那一块。

我这说的是ASP.NET MVC的Web程序,其它的请绕行哈.

IIS 6 7 8的变化,自行找资料。不影响ASP.NET 的处理机制。

开始步骤:

1.服务器监听TCP请求处理,转发给IIS.........

 

1.

1-2

 

 

2. IIS 接受到请求后,发送给Web程序。

 

 

 

 

3.Web程序在启动的时候,触发一系列的事件。

 

 

 

4.请找些资料 理解上面的管道模型 ,理解 HttpModule 、HttpHandler。Web程序启动的时候,事件注册顺序表,来自MSDN。

 

5 .穿过注册的Module后,才进入对应的 Handler 进行请求处理。MVC在配置文件中,加载注册了路由模块。

 

 

7.System.Web.dll 中的URL

:

 

在程序启动的时候,触发注册模块的 Init 方法。

 

 

8.此方法为 HttpApplication 的事件  注册了处理程序 。在触发此事件的时候,进行了请求的路由检测。路由数据,RouteTable是当前应用程序域-AppDomain下的一个单例模式的事例。实现在应用程序级别的路由数据共享。

 

9. 在应用程序启动的时候,使用单例的路由表 RouteTable对象,进行路由注册的注册配置。

 

好了。路由数据已经准备初始化完毕,各项处理事件也注册完毕。当请求进入当前程序时候,进入管道模型,最终到达处理程序Handler,将生成的响应数据返回。

----------------------------------关于管道模型的设计-------------------------------------

附加:

 

 

参考文献: 

https://msdn.microsoft.com/en-us/library/system.web.httpapplication(v=vs.80).aspx

 

 

转载地址:http://gjchl.baihongyu.com/

你可能感兴趣的文章
PostgreSQL on ECS SLA 流复制备库+秒级快照+PITR+自动清理
查看>>
Swift游戏实战-跑酷熊猫 08 产生源源不断的移动平台
查看>>
Web---Cookie技术(显示用户上次登录的时间、显示用户最近浏览的若干个图片(按比例缩放))...
查看>>
【6】JAVA---地址App小软件(QueryPanel.class)(表现层)
查看>>
玩转spring boot——ajax跨域
查看>>
使用Python做科学计算初探(转)
查看>>
线程状态及属性
查看>>
[20171124]手工使用种子库建库.txt
查看>>
4.2、Android Studio压缩你的代码和资源
查看>>
Knockout应用开发指南 第十章:更多信息(完结篇)
查看>>
apache禁止执行php文件
查看>>
模块打包工具 webpack
查看>>
C# 语言历史版本特性(C# 1.0到C# 7.1汇总更新)
查看>>
现代IM系统中消息推送和存储架构的实现
查看>>
Linux下时间范围判断的程序流程及其C代码实现
查看>>
关闭mongodb
查看>>
Onvif开发之客户端鉴权获取参数篇
查看>>
高性能后台服务器架构设计
查看>>
mysql通信协议
查看>>
一碗拉面,两多温情
查看>>