PageBaseを継承してログイン状態を判断し、ログインしていない場合はログインページにジャンプします


元の住所が見つからない...ここで原作者がbaspageを建ててくれたことに感謝します.各ページの基礎というクラスは、ベースクラスの中でログインがあるかどうかを判断し、ログインしていないと、ログインページにジャンプします.
/// <summary>
/// Web , ( )。
/// </summary>
public class PageBase : Page
{
    private const string HEADER_PREFIX = "  :: {0}";

    protected override void OnInit(EventArgs e)
    {
        base.OnInit(e);

        //User u = new User("admin");
        ////User u = Users
        //HttpContext.Current.User = u;

        //  RBAC , Logic.aspx 
        if (!Convert.ToBoolean(ConfigurationManager.AppSettings["EnableRBAC"]))
        {
            return;
        }
        //  , Logic.aspx 
        if (HttpContext.Current.Request.AppRelativeCurrentExecutionFilePath.CompareTo("~/Login.aspx") == 0)
        {
            return;
        }
        //  
        bool isLogin = false;
        if (HttpContext.Current.Session["UserID"] != null &&
            HttpContext.Current.Session["UserName"] != null )
        {
            long userId = long.Parse(HttpContext.Current.Session["UserID"].ToString());
            string userName = HttpContext.Current.Session["UserName"].ToString().Trim();
            UserLogic userLogic = new UserLogic();
            TS_USER user = userLogic.SelectEntity(userId);
            if (user.USERNAME.CompareTo(userName) == 0)
            {
                isLogin = true;
            }
        }
        if (!isLogin)
            ShowMessage(" ", "Login.aspx");
    }

その他のページ:
ublic partial class admin_CodeManage : PageBase