中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

自定義特性用途---案例:操作權限

發布時間:2020-05-15 06:24:10 來源:網絡 閱讀:1058 作者:1473348968 欄目:編程語言

--------------------------------------------------LimitAttribute.cs   自定義特性

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
/// <summary>
/// LimitAttribute 的摘要說明
/// </summary>
//特性只作用與方法上
[AttributeUsage(AttributeTargets.Method)]
public class LimitAttribute:Attribute
{
    private string _name;
    public string Name
    {
        get { return _name; }
    }
 public LimitAttribute(string name)
 {
        this._name = name;
 }
}

--------------------------------------------------Default.aspx

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Reflection;
public partial class _Default : System.Web.UI.Page
{
    public static readonly string _name = "李四";
    protected void Page_Load(object sender, EventArgs e)
    {
    }
    /// <summary>
    /// 判斷該用戶是否有執行權限
    /// </summary>
    /// <param name="name">用戶名稱</param>
    /// <param name="method">方法名稱</param>
    /// <returns></returns>
    private bool IsLimit(string name, string method)
    {
        //獲取該類型
        Type t = typeof(_Default);
        //查找該方法
        MethodInfo mi = t.GetMethod(method);
        if (mi == null)
            return false;
        
        //獲取方法上的特性
        LimitAttribute la = Attribute.GetCustomAttribute(mi, typeof(LimitAttribute)) as LimitAttribute;
        if (la == null)
            return false;
        
        //判斷用戶
        if (la.Name == name)
        {
            return true;
        }
        else
        {
            return false;
        }
    }
    [Limit("張三")]
    public void btnView_Click(object sender, EventArgs e)
    {
        if (IsLimit(_name, "btnView_Click"))
        {
            ClientScript.RegisterStartupScript(this.GetType(), "ClientScript", "alert('我是查看')", true);
        }
        else
        {
            ClientScript.RegisterStartupScript(this.GetType(), "ClientScript", "alert('對不起,您沒有權限操作')", true);
        }
    }
    [Limit("李四")]
    public void btnEdit_Click(object sender, EventArgs e)
    {
        if (IsLimit(_name, "btnEdit_Click"))
        {
            ClientScript.RegisterStartupScript(this.GetType(), "ClientScript", "alert('我是修改')", true);
        }
        else
        {
            ClientScript.RegisterStartupScript(this.GetType(), "ClientScript", "alert('對不起,您沒有權限操作')", true);
        }
    }
    [Limit("李四")]
    public void btnAdd_Click(object sender, EventArgs e)
    {
        if (IsLimit(_name, "btnAdd_Click"))
        {
            ClientScript.RegisterStartupScript(this.GetType(), "ClientScript", "alert('我是添加')", true);
        }
        else
        {
            ClientScript.RegisterStartupScript(this.GetType(), "ClientScript", "alert('對不起,您沒有權限操作')", true);
        }
    }
    [Limit("王五")]
    public void btnDel_Click(object sender, EventArgs e)
    {
        if (IsLimit(_name, "btnDel_Click"))
        {
            ClientScript.RegisterStartupScript(this.GetType(), "ClientScript", "alert('我是刪除')", true);
        }
        else
        {
            ClientScript.RegisterStartupScript(this.GetType(), "ClientScript", "alert('對不起,您沒有權限操作')", true);
        }
    }
}

自定義特性用途---案例:操作權限

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临桂县| 壶关县| 霍城县| 武陟县| 凤凰县| 镇雄县| 建瓯市| 手机| 吴川市| 遂川县| 合山市| 买车| 伊金霍洛旗| 泾川县| 循化| 莱州市| 九龙县| 五峰| 黔西| 芒康县| 桐梓县| 陕西省| 夏河县| 延庆县| 察雅县| 武城县| 佳木斯市| 社旗县| 遵义市| 威远县| 广汉市| 通山县| 东光县| 瑞安市| 云林县| 喜德县| 平湖市| 安陆市| 普定县| 台东县| 汤原县|