ASP.NET中Page_Load,与Page_Init

Page_Init()事件:aspx初始化时触发,只执行一次,常用于页面初始化,并且执行在page_load之前,如果在aspx的程序中需要使用该方法,那么该方法的类需要继承 System.Web.UI.Page

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace wangjin.Common
{
                            //因为类只能单继承,所以这儿必须继承page页,这样后面的类继承该类之后,也等同于继承了page类,并且有了该类的方法
   public class CheckSession:System.Web.UI.Page
    {
       //Init事件:aspx初始化时触发.
       public void Page_Init(object sender, EventArgs e)
       {
           if (Session["userInfo"] == null)
           {
               Response.Redirect("UserLogin.aspx");
           }
       }

    }
}

别的页面使用该类

using CZBK.ItcastProject.Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace wangjin.WebApp._2015_5_31
{
//该类本来是继承sys.web.page类的,但是现在因为CheckSession类继承page,所以只需要继承该类即可 public partial class UserInfoList :Common.CheckSession { protected void Page_Load(object sender, EventArgs e) { //if (Session["userInfo"] == null) //{ // Response.Redirect("UserLogin.aspx"); //} //else //{ // Response.Write("欢迎"+((UserInfo)Session["userInfo"]).UserName+"登录本系统"); //} } } }

Page_Load()每当表单提交,则进行执行