ASP.NET动态网站开发实战教程
上QQ阅读APP看书,第一时间看更新

1.2 ASP.NET的运行原理和过程

当装载ASP.NET的Web服务器接收到HTTP要求时,HTTP监听程序(HTTP Listener)会将要求转交给URL指定的网站应用程序的工作流程(Worker Process)。ASP.NET的工作流程处理器(aspnet_isapi.dll,若是IIS 5.0时则为aspnet_wp.exe)会解析这个URL,并激活位于System.Web.Hosting命名空间中的ISAPIRuntime对象,接收HTTP要求,并调用Htt-pRuntime,运行HttpRuntime.ProcessRequest(),在ProcessRequest()中使用HttpApplication-Factory建立新的HttpApplication(或是指定的IHttpHandler处理器),再分派给Page中的ProcessRequest()或是IHttpHandler的ProcessRequest(),运行之后,再传回到ISAPIRunt-ime,以及aspnet_isapi.dll,最后交由HTTPListener回传给用户端。因为程序有如管线般顺畅的运行,因此称为HTTP Pipeline Mode。

客户端页面请求与响应示意如图1-1所示,ASP.NET内部运行机制如图1-2所示。

978-7-111-46863-9-Chapter01-1.jpg

图1-1 客户端页面请求与响应示意图

978-7-111-46863-9-Chapter01-2.jpg

图1-2 ASP.NET内部的运行机制