页面权限设计思路简析

1、用户对象设计

 1     public class User
 2     {
 3         public string UserName { get; set; }
 4         public string Password { get; set; }
 5         //权限管理
 6         public List<string> Permission { get; private set; }
 7         public bool CheckPermission(string code)
 8         {
 9             if (this.Permission != null && this.Permission.Contains(code))
10             {
11                 return true;
12             }
13             return false;
14         }
15         /// <summary>
16         /// 加入权限
17         /// </summary>
18         /// <param name="code"></param>
19         public void SetPermission(string code)
20         {
21             if (this.Permission == null)
22             {
23                 this.Permission = new List<string>();
24             }
25             this.Permission.Add(code);
26         }
27     }

2、扩展Html.Authorize(扩展方法)

    public static class AuthorizeExtensions
    {
        public static bool IsAuthorized(this HtmlHelper helper, string permissionCode)
        {
            return UserService.GetCurrentUser().CheckPermission(permissionCode);
        }

        public static string Authorize(this string html, string permissionCode)
        {
            if (UserService.GetCurrentUser().CheckPermission(permissionCode);)
            {
                return html;
            }
            else
            {
                return string.Empty;
            }
        }


        public static IHtmlString Authorize(this IHtmlString html, string permissionCode)
        {
            if (UserService.GetCurrentUser().CheckPermission(permissionCode);)
            {
                return html;
            }
            else
            {
                return MvcHtmlString.Empty;
            }
        }
    }

3、用例

1                             @if (Html.IsAuthorized(Utility.AuthConst.IcsonCodeAddVirtualQty))
2                             {
3                                    <a οnclick="XX">
4                                         查看</a>
5                             }

 

 

转载于:https://www.cnblogs.com/jueye/archive/2013/05/17/3084136.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值