比方一个系统有老师和学生两个用户,必须登录了才能操作,但是有些页面是两种用户都可以登录的,因此做了一个PageBase类判断登录,如:public class PageBase : System.Web.UI.Page
{
//页面基类,在线学生或老师
protected internal Student OnlineStudent;
protected internal Teacher OnlineTeacher; public PageBase()
{
//
//TODO: 在此处添加构造函数逻辑
// //iStudentID,获取cookie中的学生ID;iTeacherID,获取cookie中的老师ID
int iStudentID = Common.ObjToInt(HttpContext.Current.Request.Cookies["StudentID"], 0);
int iTeacherID = Common.ObjToInt(HttpContext.Current.Request.Cookies["TeacherID"], 0);
if (iStudentID == 0 && iTeacherID == 0)
{
//没有登录相关代码,退出
return;
}
else if (iStudentID > 0 && iTeacherID > 0)
{
//不允许学生和老师两种用户同时登录的情况
return;
}
else
{
if (iStudentID > 0)
{
Student student = new Student();
student.GetStudentInfo(iStudentID);
if (student.StudentID > 0)
{
OnlineStudent = student;
}
}
if (iTeacherID > 0)
{
Teacher teacher = new Teacher();
teacher.GetTeacherInfo(iTeacherID);
if (teacher.TeacherID > 0)
{
OnlineTeacher = teacher;
}
}
}
}
}/// <summary>
///TeacherPage,老师页面基类
/// </summary>
public class TeacherPage : PageBase
{
public TeacherPage()
{
//
//TODO: 在此处添加构造函数逻辑
//
if (OnlineTeacher.TeacherID <= 0)
{
//没有老师登录,退出
return;
}
}
}现在是这样做的,比如某个页面只能老师登录,那么此页面就是public partial class _Default : TeacherPage,继承于TeacherPage,假如在PageBase里面已经判断出了用户没有登录(也就是Request.Cookies["TeacherID"]为空),这个时候我希望TeacherPage构造函数里面的东西就不要继续执行了,请问应该怎么做呢(return是不行的)?
小弟.NET很菜,期待各位的解答,或者有什么更好的基类方法传授一下,谢谢,呵呵!
{
//页面基类,在线学生或老师
protected internal Student OnlineStudent;
protected internal Teacher OnlineTeacher; public PageBase()
{
//
//TODO: 在此处添加构造函数逻辑
// //iStudentID,获取cookie中的学生ID;iTeacherID,获取cookie中的老师ID
int iStudentID = Common.ObjToInt(HttpContext.Current.Request.Cookies["StudentID"], 0);
int iTeacherID = Common.ObjToInt(HttpContext.Current.Request.Cookies["TeacherID"], 0);
if (iStudentID == 0 && iTeacherID == 0)
{
//没有登录相关代码,退出
return;
}
else if (iStudentID > 0 && iTeacherID > 0)
{
//不允许学生和老师两种用户同时登录的情况
return;
}
else
{
if (iStudentID > 0)
{
Student student = new Student();
student.GetStudentInfo(iStudentID);
if (student.StudentID > 0)
{
OnlineStudent = student;
}
}
if (iTeacherID > 0)
{
Teacher teacher = new Teacher();
teacher.GetTeacherInfo(iTeacherID);
if (teacher.TeacherID > 0)
{
OnlineTeacher = teacher;
}
}
}
}
}/// <summary>
///TeacherPage,老师页面基类
/// </summary>
public class TeacherPage : PageBase
{
public TeacherPage()
{
//
//TODO: 在此处添加构造函数逻辑
//
if (OnlineTeacher.TeacherID <= 0)
{
//没有老师登录,退出
return;
}
}
}现在是这样做的,比如某个页面只能老师登录,那么此页面就是public partial class _Default : TeacherPage,继承于TeacherPage,假如在PageBase里面已经判断出了用户没有登录(也就是Request.Cookies["TeacherID"]为空),这个时候我希望TeacherPage构造函数里面的东西就不要继续执行了,请问应该怎么做呢(return是不行的)?
小弟.NET很菜,期待各位的解答,或者有什么更好的基类方法传授一下,谢谢,呵呵!
解决方案 »
- 用户自定义控件同时存在于两个dll中,怎么解决、、、、、、、、
- 关于静态页的问题!
- 广州 招聘ASP.NET(C#)工程师
- 急怎么样让treeview结点在没有子结点的时候也呈现+号??
- 这个功能如何实现,在线等!!!!
- 请问如何实现一个动态网页下拉菜单,数据要从sql server中读出
- --------------------急,控制上传图片位置的问题,急,求教,问题如下----------------------
- C#好还是JAVA好
- 帮我呀!
- 服务器 TypeInitializationException 和Could not load file or assembly
- 在后台如何执行前台js事件?急
- 求真相
public class PageBase : System.Web.UI.Page
...............
if (iStudentID == 0 && iTeacherID == 0)
{
//意思就是希望在这里直接退出,不在执行继承于PageBase的TeacherPage构造函数继续执行,而return是达不到要求的
return;
}
.................