meiwn

导航

关于权限的一点学习

我认为权限是个比较复杂的东东,我写了个简单的代码,就是登陆后把此用户的权限列表读出来,放在一个hashtable里,并放到一个session中,用的时候就比较这个菜单或一个文件的权限是否在hashtable中,不知道这种想法对不对,希望大家提出意见

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class Default5 : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    {
      
    }
    
protected void Button1_Click(object sender, EventArgs e)
    {
//表示是否登陆
        Session["username"= "admin";
        Hashtable ht 
= new Hashtable();
        ht.Add(
"调查管理""1");
        ht.Add(
"新闻管理""2");
        ht.Add(
"会员管理""3");
       
//权限表
        Session["popedom"= ht;
    }
    
protected void Button2_Click(object sender, EventArgs e)
    {
        
        Session.Abandon();
    }
    
protected void LinkButton1_Click(object sender, EventArgs e)
    {
        
if (Session["username"]!=null)
        {
            
if (((Hashtable)Session["popedom"]).Contains("调查管理"))
        {
            LinkButton1.Text 
= "有调查管理权限";
        }

        }
        
else
        {
            LinkButton1.Text 
= "你没有调查管理权限";
            Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), 
"dd""alert('你没有调查管理权限');"true);
        } 
   
    }
    
protected void LinkButton2_Click(object sender, EventArgs e)
    {
        
if (Session["username"]!=null)
        {
            
if (((Hashtable)Session["popedom"]).Contains("新闻管理"))
            {
                LinkButton2.Text 
= "有新闻管理权限";
            }

        }
        
else
        {
            LinkButton2.Text 
= "你没有新闻管理权限";
            Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), 
"dd""alert('你没有新闻管理权限');"true);
        }

    }
}

posted on 2006-10-25 10:25  努力学习.NET  阅读(334)  评论(1编辑  收藏  举报