Asp.Net HttpApplication请求管道与Session(一)

1.请求处理顺序执行事件

        /********************请求处理顺序执行事件**********************/
/// <summary>
/// 请求入站
/// 在此管道中禁止访问Session
/// </summary>
protected void Application_BeginRequest()
{
Response.Write("----BeginRequest---");
Response.Write("<br/>");
}
/// <summary>
/// 发送内容到客户端之前
/// 此管道中禁止访问Session
/// </summary>
protected void Application_PreSendRequestContent()
{
Response.Write("----PreSendContent---:");
Response.Write("<br/>");
}
/// <summary>
/// 页面框架执行
/// 此管道中可以访问Session
/// </summary>
protected void Application_PostRequestHandlerExecute()
{
Response.Write("----PostRequestHandlerExecute---count:" + Session.Count + ",当前SessionID:" + Session.SessionID);
StringBuilder builder = new StringBuilder();
Response.Write("<div style='text-indent:2em;'>");
foreach (string item in Session.Keys)
{
string line = string.Format("---{0}:{1}", item, Session[item]);
builder.AppendLine(line);
}
Response.Write(builder.ToString());
Response.Write("</div>");
Response.Write("<br/>");
}
/// <summary>
/// 页面框架释放请求状态
/// 此管道中禁止访问Session
/// </summary>
protected void Application_ReleaseRequestState()
{
Response.Write("----ReleaseRequestStatet---");
Response.Write("<br/>");
}
/// <summary>
/// 页面框架响应完成
///此管道,禁止使用Session
/// </summary>
protected void Application_UpdateRequestCache()
{
Response.Write("----UpdateRequestCache---");
Response.Write("<br/>");
}
/// <summary>
/// 请求出站
/// 此管道中禁止访问Session
/// </summary>
protected void Application_EndRequest()
{
Response.Write("----EndRequest---");
Response.Write("<br/>");
}

没有添加Session数据前访问:

Asp.Net HttpApplication请求管道与Session(一)

添加Session 数据后访问:

Asp.Net HttpApplication请求管道与Session(一)

更多:

Asp.Net HttpApplication请求管道与Session(二)

Asp.Net HttpApplication 事件汇总

ASP.NET的Application简介1

上一篇:Eclipse:设置自动补全,提高编程效率


下一篇:Linux内核socket优化项