CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

简单问题,请高手们赐教,小弟感谢你们!

楼主zhongxt(天若有情天亦老)2005-09-14 08:56:55 在 .NET技术 / ASP.NET 提问

我的页面有很多都要判断权限,  
  以前在ASP里面用的是<!--#include   file="login.asp"-->  
  在ASP.NET里面,我不可能每个页面都写这名话吧,有没有好的方法。  
  if   (Request.Cookies["username"]==null)  
  {  
  Response.Redirect("aa.asp");  
  Response.End();  
  } 问题点数:20、回复次数:10Top

1 楼zhongxt(天若有情天亦老)回复于 2005-09-14 09:07:16 得分 0

顶Top

2 楼Peryee(爱笑)回复于 2005-09-14 09:08:19 得分 2

用ASP.NET的FORM身份验证可以解决你这个问题Top

3 楼zhongxt(天若有情天亦老)回复于 2005-09-14 09:11:57 得分 0

请大哥写一下代码?Top

4 楼zhuxiaojun2002(车房志之扯坏的领带)回复于 2005-09-14 09:13:42 得分 18

写个基类,把  
  if   (Request.Cookies["username"]==null)  
  {  
  Response.Redirect("aa.asp");  
  Response.End();  
  }  
  写在基类中,然后让每个页面继承基类就ok了。Top

5 楼zhuxiaojun2002(车房志之扯坏的领带)回复于 2005-09-14 09:17:06 得分 0

using   System;  
  using   System.Web;  
  using   System.Web.SessionState;  
  using   System.Data;  
  using   System.Data.SqlClient;  
   
  namespace   Project.Component  
  {  
  ///   <summary>  
  ///   AdminPage   的摘要说明。  
  ///   </summary>  
  public   class   AdminPage   :BasePage  
  {  
  protected   Project.Business.DBOperator.AdminManage   AdminM=new   Project.Business.DBOperator.AdminManage();  
  public   AdminPage()   :base()  
  {  
  this.Load   +=   new   EventHandler(AdminPage_Load);  
  }  
   
  private   void   AdminPage_Load(object   sender,EventArgs   e)  
  {  
  //后台页面处理  
  if(MySession.getSession("AdminId")==null)  
  {  
  Response.Write("<script   language='javascript'>alert('您还没登录!');window.location='../login.aspx';</script>");  
  }  
  //可以在此加入权限处理  
  if(MySession.getSession("AdminId")!=null&&MySession.getSession("AdminId").ToString()!="")  
  {  
  string   url=HttpContext.Current.Request.Url.ToString();  
  DataTable   dt=AdminM.GetWebManageRight();  
  for(int   i=0;i<dt.Rows.Count;i++)  
  {  
  if   (url.ToLower().ToString().IndexOf(dt.Rows[i]["rightUrl"].ToString().ToLower())>=0)  
  {  
  if(MySession.getSession("AdminOs").ToString().ToLower().IndexOf(dt.Rows[i]["rightCode"].ToString().ToLower())   <   0)  
  {  
  Response.Write("<script   language='javascript'>alert('您没有该模块的权限!');window.history.back();</script>");  
  }  
  }  
  }  
  }  
  }  
  }  
  }  
   
   
  后台的所有页面都继承了AdminPage,不但做了是否登陆判断,还做了权限判断Top

6 楼zhongxt(天若有情天亦老)回复于 2005-09-14 09:19:03 得分 0

zhuxiaojun2002     大哥,你好!  
  麻烦你     “写基类,后面的继承”给个例子。谢谢,我是一个初学者。  
  Top

7 楼zhuxiaojun2002(车房志之扯坏的领带)回复于 2005-09-14 09:21:26 得分 0

其实最好是用   Peryee(爱笑)的方法,FORM身份验证.  
   
  可惜我不会,Top

8 楼zhuxiaojun2002(车房志之扯坏的领带)回复于 2005-09-14 09:26:21 得分 0

呵呵,所有权限页面  
   
  using   Project.Component;  
  namespace   Project.WebManage.Member  
  {  
  ///   <summary>  
  ///   aud_user   的摘要说明。  
  ///   </summary>  
  public   class   aud_user   :   AdminPage//System.Web.UI.Page  
   
  把System.Web.UI.Page改成你的基类名我这是AdminPage  
   
  基类就是我上面的代码,不过我的AdminPage   还继承了BasePage  
   
  去掉我上面的权限判断的,  
  改成这样  
  public   class   AdminPage   :System.Web.UI.Page就是你想要的Top

9 楼zhuxiaojun2002(车房志之扯坏的领带)回复于 2005-09-14 09:31:09 得分 0

呵呵,慢慢来,记得发军饷了请我抽大烟哦哈哈,开个玩笑!  
   
  如果还不会,自己查查书,学学了。Top

10 楼zhongxt(天若有情天亦老)回复于 2005-09-15 08:39:12 得分 0

zhuxiaojun2002(车房志之扯坏的领带)    
   
  没问题,发军响时请你喝酒都没问题。Top

相关问题

  • 这个问题对您简单,请帮忙纠错,感谢!
  • 一个非常简单的SQL语句?请各位指点!!非常感谢!!!
  • 一个非常简单的问题,请各位指点,非常感谢!!!
  • 一个非常简单的问题,请各位指点,非常感谢!!!
  • 一个非常简单的SQL语句?请各位指点!!非常感谢!!!
  • 一个非常简单的SQL语句?请各位指点!!非常感谢!!!
  • 一个非常简单的SQL语句?请各位指点!!非常感谢!!!
  • 请帮忙指点一个简单的邮件后缀问题,万分感谢!!!
  • 请帮忙调试一下一个简单的录音类,非常感谢!
  • 简单的小程序,请帮我看看哪有错,万分感谢

关键词

  • asp.net
  • 页面
  • asp
  • null
  • adminpage
  • 权限
  • mysession
  • adminid
  • 基类
  • 继承

得分解答快速导航

  • 帖主:zhongxt
  • Peryee
  • zhuxiaojun2002

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo