ASP.NET应用程序生命周期趣谈(二)

在上回书开始的时候我们提到博客园的IIS看了一眼我的请求后就直接交给ASP.NET去处理了,并且要 求ASP.NET处理完之后返回HTML以供展示。 

那么我们不仅要问:

1,IIS肯定是没有眼睛的啦,那它是怎么“看”的呢?

2,在“看”到了.aspx的页面请求后又是如何把它交给ASP.NET的呢?如果不做任何处理那它的存在又 有什么意义呢?

3,ASP.NET收到这个处理请求后又是如何做的呢?它是怎么创建Context对象又是如何“雇佣”项目经 理HttpApplication对象的呢?

本文将就这些问题进行深入而简单的探讨。

当你点击了这篇文章的链接,在很短的一段时间内博客园的IIS就收到了你的请求。它要“看”了。正 如我们知道的,它没有眼睛,所以它依靠ISAPI来“看”请求的后缀。我们这次请求的是.ASPX文件。 ISAPI是全称Inernet Server Application Programe Interface, 它就是IIS的眼睛和路由器,先看后缀 然后分发给各个应用,我们可以通过访问IIS的站点的属性—》主目录—》配置 来查看它的路由映射。

时间: 2024-12-24 11:42:22

ASP.NET应用程序生命周期趣谈(二)的相关文章

ASP.NET应用程序生命周期趣谈(一)

这几天一直在看ASP.NET应用程序生命周期,真是太难了,我理解起来费了劲了,但偏偏它又是那么重 要,所以我希望能给大家带来一篇容易理解又好用的文章来帮助学习ASP.NET应用程序生命周期.这篇就 是了. 当你访问博客园想看我的这篇文章的时候,这个请求就被博客园的WEB SERVER(IIS)接收到了.博客 园IIS看了一眼我的请求,"噢,是.aspx啊,给ASP.NET去处理吧,就把我这个请求给了ASP.NET,并且说 :"这个你来处理,你处理完了之后把HTML给我,我好给邱爽一个回

ASP.NET应用程序生命周期趣谈(三) HttpModule

在之前的文章中,我们提到过P_Module(HttpModule)这个能干的程序员哥们儿,它通过在项目经理 HttpApplication那里得到的授权,插手整个应用程序级别的事件处理.所有的HttpModule都要实现 IHttpModule接口,那么我们看IHttpModule的定义: namespace System.Web { public interface IHttpModule { void Dispose(); void Init(HttpApplication context)

ASP.NET页生命周期和ASP.NET应用程序生命周期有什么不同?

问题描述 ASP.NET页生命周期包括在ASP.NET应用程序生命周期里吗?? 解决方案 解决方案二:http://www.knowsky.com/344806.html你去看看解决方案三:html本身就是所谓statelessprotocol.说到页生命周期时一般是指ViewState.解决方案四:简单讲:ViewState-PageLevelstateSession-SessionLevelstateApplication-ApplicationLevelstate解决方案五:namhyuk

ASP.NET应用程序生命周期问题.

问题描述 看了MSDN上的.ASP.NET应用程序生命周期.有下面几个阶段1.用户从Web服务器请求应用程序资源2.ASP.NET接收对应用程序的第一个请求.3.为每个请求创建ASP.NET核心对象.4.将HttpApplication对象分配给请求5.由HttpApplication管线处理请求.那HttpModule和HttpHandler属于上面的哪个阶段啊? 解决方案 解决方案二:请求-->IIS-->ASP.NETHTTP运行期-->认证-->授权--..........

ASP.NET 应用程序生命周期

应用程序生命周期概述 阶段 说明 用户从 Web 服务器请求应用程序资源. ASP.NET 应用程序的生命周期以浏览器向 Web 服务器(对于 ASP.NET 应用程序,通常为 IIS)发送请求为起点.ASP.NET 是 Web 服务器下的 ISAPI 扩展.Web 服务器接收到请求时,会对所请求的文件的文件扩展名进行检查,确定应由哪个 ISAPI 扩展处理该请求,然后将该请求传递给合适的 ISAPI 扩展.ASP.NET 处理已映射到其上的文件扩展名,如 .aspx..ascx..ashx 和

ASP.NET 应用程序生命周期概述

来源:MSDN ASP.NET 应用程序生命周期概述     本主题概述应用程序生命周期,列出重要的生命周期事件,并描述如何编写适合应用程序生命周期的代码.在 ASP.NET 中,若要对 ASP.NET 应用程序进行初始化并使它处理请求,必须执行一些处理步骤.此外,ASP.NET 只是对浏览器发出的请求进行处理的 Web 服务器结构的一部分.了解应用程序生命周期非常重要,这样才能在适当的生命周期阶段编写代码,达到预期的效果. 应用程序生命周期概述 下表描述了 ASP.NET 应用程序生命周期的各

ASP.NET AJAX客户端生命周期分析(理论篇)

一.引言 微软的ASP.NET AJAX框架,作为一个相对比较完善的AJAX框架,有许多方面值得我们作深入研究.本文中,我们将结合一个具体的例子试图探究ASP.NET AJAX框架的客户端生命周期过程. [注]阅读本文最好要结合"ASP.NET应用程序生命周期概述"和"ASP.NET页面生命周期概述"两篇文章共同学习. 二.ASP.NET AJAX客户端生命周期原理 因为ASP.NET AJAX框架在开发思路上极大地借鉴了ASP.NET 2.0的开发技术,而且将会被

IIS处理asp.net请求和asp.net的页面生命周期

当一个客户端页面访问IIS试图获取一些信息的时候,发生了什么事情?一个请求在通过了HTTP管道后又发生了什么?本文主要是描述这两个过程,即IIS处理asp.net请求和asp.net的页面生命周期.欢迎大家积极拍砖,共同学习,共同进步. 首先我们要弄清楚两个非常重要的概念: 1, worker process(w3wp.exe). worker process管理所有的来自客户端的请求并给出响应.它是IIS下asp.net应用程序的核心. 2, application pool. 它是worke

使用“管道”与“应用程序生命周期”重构:可插拔模块

  本篇博客依然用于总结工作中遇到的较有用的设计模式.     入正题.   历史代码       我目前开发的系统中,要实现以模块的方式进行动态扩展.这些模块是以独立程序集的方式嵌入到系统中.原系统中,使用了一个简单的接口 IModule 来实现模块的初始化: 1 2 3 4 public interface IModule {     void Initialize(); } 这样,在应用程序初始化时,会检测指定目录 Modules 下的所有程序集,并对其中所有实现 IModule 接口的类