今天在看asp.net服務器控件開發的時候,看到其前面介紹的都是基於countrol的繼承,然後重寫方法,實現一些最基本的效果。
於是本人將之拓展下,繼承page類,然後重寫其方法,實現最基本的如頁面加載的時候判斷用戶是否登錄,用戶權限等問題。
下面做個最簡單的,判斷用戶是否登錄。
代碼如下
<span style="font-size:18px;">using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
namespace WebApplication1
{
public class Roots:Page
{
protected override void OnInit(EventArgs e)
{
if (Session["userName"] == null)
{
Response.Redirect("login.aspx");
}
base.OnInit(e);
}
}
}
</span>
我寫了一個Roots類,繼承page然後重寫了OnInit方法(有對page的生命週期不瞭解的來這裏看)
然後在你要驗證的頁面下繼承Roots類就行了
例如 Main.aspx
<span style="font-size:18px;"> public partial class main : Roots
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
</span>
當你的標記爲空的時候 就會執行你的OnInit語句裏面的邏輯。
當然,這裏可以通過重寫能實現很多通用功能,比如母版樣式,不同用戶登錄的不同權限等等。
今天在這拋磚引玉。希望和大家共同學習。