OnPreInit,OnInit ,OnInitComplete ,OnPreLoad ,Page_Load等执行顺序

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Default5 : System.Web.UI.Page
{
    static int count = 0;
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Write(count + "Page_Load <br />");
        count++;
    }
    protected override void OnPreInit(EventArgs e)
    {
        base.OnPreInit(e);
        Response.Write(count + "OnPreInit <br />");
        count++;
    }
    protected override void OnInit(EventArgs e)
    {
        base.OnInit(e);
        Response.Write(count + "OnInit <br />");
        count++;
    }
    protected override void OnLoad(EventArgs e)
    {
        base.OnLoad(e);
        Response.Write(count + "OnLoad <br />");
        count++;
    }
    protected override void OnPreLoad(EventArgs e)
    {
        base.OnPreLoad(e);
        Response.Write(count + "OnPreLoad <br />");
        count++;
    }
    protected override void OnLoadComplete(EventArgs e)
    {
        base.OnLoadComplete(e);
        Response.Write(count + "OnLoadComplete <br />");
        count++;
    }
    protected override void OnInitComplete(EventArgs e)
    {
        base.OnInitComplete(e);
        Response.Write(count + "OnInitComplete <br />");
        count++;
    }
    protected override void OnUnload(EventArgs e)
    {
        base.OnUnload(e);
    }
    protected override void OnDataBinding(EventArgs e)
    {
        base.OnDataBinding(e);
        Response.Write(count + "OnDataBinding <br />");
        count++;
    }
    protected override void OnPreRender(EventArgs e)
    {
        base.OnPreRender(e);
        Response.Write(count + "OnPreRender <br />");
        count++;
    }
    protected void btnGraphics_Click(object sender, EventArgs e)
    {
        //Bitmap bmp = new Bitmap(10, 10);
        //Graphics g = Graphics.FromImage(bmp);
        Response.Write(count + "btnGraphics_Click <br />");
        count++;
    }

}

 

结果为:

0OnPreInit 
1OnInit 
2OnInitComplete 
3OnPreLoad 
4Page_Load 
5OnLoad 
6OnLoadComplete 
7OnPreRender

 

*session失效或者超时的跳转(站长后台)

判断页面(每个页面调用)

protected override void OnPreInit(EventArgs e)
{
        new Users().GetUserInfoCookie(out _mywebhostid, out _myuserid);
        if (_myuserid == string.Empty || _mywebhostid == 0)
        {
            Response.Redirect("~/login.aspx?reurl=" + HttpUtility.UrlEncode(Request.Url.AbsoluteUri));
        }
        else
        {
            new Users().GetUserInfoCookie(out _mywebhostid, out _myuserid);
        }
        base.OnPreInit(e);
}

 

登录页面

 string strIp = Request.UserHostAddress;
 string strSuccessUrl = Request.QueryString["reurl"] == null ? "~/index.aspx" : HttpUtility.UrlDecode(Request.QueryString["reurl"].ToString());


 Users u = new Users();
 string loginMsg = u.LoginMsg(strUserId, strPassword, Request.UserHostAddress);
 u.LoginMsg2(strUserId, Request.UserHostAddress, Request.UserAgent, 1);

 // 登录跳转到成功页面
 if (loginMsg == string.Empty)
 {
     LoginLog();
     Response.Redirect(strSuccessUrl);
 }

 

posted on 2014-12-19 09:40  狼来了  阅读(737)  评论(1编辑  收藏  举报