日期:2014-05-19  浏览次数:20495 次

请问在asp.net里这句代码一般写在哪里
if(Session[ "Admin "]== " ")
Response.Redirect( "Login.aspx ");

是写在每个后台的页面的Page_load事件里

还是写在一个用户控件的Page_load事件里   再把这个用户空件拖到每个后台页面里

请问这2种方法哪种好?   你们有其它办法吗

------解决方案--------------------
public class Base : System.Web.UI.Page
{
//你所要做的事,有成员,有方法
//比如:进行SessionID的判断
}

你的页面例如:EditInfo.aspx 后置代码就继承上面那个 Base 类就ok了

------解决方案--------------------
用母板也很方便。

以下是我用的一个网页基类

namespace Rmsk.BLL
{
using System;
using System.Web;
using System.Configuration;

/// <summary>
/// Base class for all the pages in this application
/// </summary>
public class BasePage : System.Web.UI.Page
{
/// <value>
/// Property ApplicationPath is used to get the Application Path for URLs.
/// </value>
public static String PathPrefix
{
get
{
return (HttpContext.Current.Request.ApplicationPath== "/ " ? " " : HttpContext.Current.Request.ApplicationPath);
}
}

public static String Sys_SchoolId{
get {
return (System.Configuration.ConfigurationManager.AppSettings[ "Sys_SchoolId "]);
}
}
} // class PageBase

} // namespace

------解决方案--------------------
写一个继承类,覆盖一些onload类,代码写到里面。
你这行代码有问题:
if(Session[ "Admin "] != null)
{
if(Session[ "Admin "]== " ")
Response.Redirect( "Login.aspx ");
}
else
{
Response.Write( "Error ");
}