【asp源码栏目提醒】:文章导读:在新的一年中,各位网友都进入紧张的学习或是工作阶段。
网学会员整理了asp源码-Asp net生命周期 - 计算机教材的相关内容供大家参考,祝大家在新的一年里工作和学习顺利!
ASP.NET周期 一 :
ASP.NET应用程序生命周期. HTTP 处理程序: 响应对
ASP.NET Web 应用程序的请求而运行的过程
ASP.NET 还包括其他几种内置的处理程序 HTTP 处理程序可以访问应用程序上下文包括请求用户的标识如果已知、应用程序状态和会话信息等。
当请求 HTTP 处理程序时
ASP.NET 将调用相应处理程序上的 ProcessRequest 方法。
处理程序的 ProcessRequest 方法创建一个响应此响应随后发送回请求浏览器。
就像任何页请求那样响应将途经订阅了处理程序运行后所发生事件的所有 HTTP 模块。
HTTP 处理程序可以是同步的也可以是异步的. 若要创建一个自定义 HTTP 处理程序可以创建一个可实现 IHttpHandler 接口的类以创建同步处理程序或者创建一个可实现 IHttpAsyncHandler 的类以创建异步处理程序。
IHttpHandlerFactory 类接收请求并负责向相应的 HTTP 处理程序转发请求。
您可以通过创建一个实现了 IHttpHandlerFactory 接口的类来创建自定义 HTTP 处理程序工厂。
创建自定义处理
程序工厂可以更好地控制对 HTTP 请求的处理. HTTP 模块介绍 : HTTP 模块是一个在每次针对应用程序发出请求时调用的程序集。
HTTP 模块作为
ASP.NET 请求管线的一部分调用它们能够在整个请求过程中访问寿命周期事件。
因此HTTP 模块使您有机会检查传入的请求并根据该请求采取操作。
它们还使您有机会检查出站响应并修改它。
在应用程序的 Web.config 文件中注册自定义的 HTTP 模块。
当
ASP.NET 创建表示您的应用程序的 HttpApplication 类的实例时将创建已注册的任何模块的实例。
在创建模块时将调用它的 Init 方法并且模块会自行初始化。
可以通过以下方法来创建自定义的 HTTP 模块创建一个实现 IHttpModule 接口的类然后在 Web.config 文件中
注册该类。
编写 HTTP 模块的一般过程为 1.创建一个实现 IHttpModulefrlrfSystemWebIHttpModuleClassTopic 接口的类。
2.为 InitfrlrfSystemWebIHttpModuleClassInitTopic 方法编写一个处理程序。
init 方法应该初始化模块并订阅所需的任何应用程序事件。
例如如果您希望向响应中追加内容则可以订阅 EndRequest 事件或者如果您希望执行自定义的身份验证逻辑则可以订阅 AuthenticateRequest 事件。
有关应用程序事件的更多信息请参见
ASP.NET 应用程序生命周期概述。
3.为已经订阅的事件编写代码。
4.如果模块需要清理还可选择实现 Dispose 方法。
5.在 Web.config 文件中注册模块。
二 :
ASP.NET页面生命周期. 三 :
ASP.NET应用程序上下文
ASP.
NET Web 应用程序中的页和应用程序上下文 在 Web 应用程序运行时
ASP.NET 将维护有关当前应用程序、每个用户会话、当前 HTTP 请求、请求的页等方面的信息。
ASP.NET 包含一系列类用于封装这些上下文信息。
ASP.NET 使这些类的实例可用作您可以从代码访问的内部对象。
下表列出这些内部对象同时也列出生成这些实例的类。
对象名 说明
ASP.NET 类 Response 提供对当前页的输出流的访问。
您可以使用此类将文本插入页中、编写 Cookie等等。
有关详细信息请参见 System.Web.UI.Page.Response 属性。
HttpResponse Request 提供对当前页请求的访问其中包括请求标题、Cookie、客户端证书、
查询字符串等。
您可以使用此类读取浏览器已经发送的内容。
有关详细信息请参见 System.Web.UI.Page.Request 属性。
HttpRequest Context 提供对整个当前上下文包括请求对象的访问。
您可以使用此类共享页之间的信息。
有关详细信息请参见 System.Web.UI.Page.Context 属性。
HttpContext Server 公开可以用于在页之间传输控件的实用工具方法获取有关最新错误的信息对
HTML 文本进行编码和解码等等。
有关详细信息请参见 System.Web.UI.Page.Server 属性。
HttpServerUtility Application 提供对所有会话的应用程序范围的方法和事件的访问。
还提供对可用于存储信息的应用程序范围的缓存的访问。
有关详细信息请参见
ASP.NET 应用程序状态。
HttpApplicationState Session 为当前用户会话提供信息。
还提供对可用于存储信息的会话范围的缓存的访问以及控制如何管理会话的方法。
有关详细信息请参见
ASP.NET 会话状态。
HttpSessionState Trace 提供在 HTTP 页输出中显示
系统和自定义跟踪诊断消息的方法。
有关详细信息请参见
ASP.NET 跟踪。
TraceContext HttpRequest 成员 使
ASP.NET 能够读取客户端在 Web 请求期间发送的 HTTP 值。
HttpResponse 成员 封装来自
ASP.NET 操作的 HTTP 响应信息。