ASP.Net 创建自定义类特效进行权限验证

//解析特性

  public class AdmCheckLevel : Controller
    {
        protected override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            Type type = this.GetType();

            var attribute = type.GetCustomAttributes(typeof(CheckLevelAttribute), false);

            for (int i = 0; i < attribute.Length; i++)
            {
                //设置属性
                CheckLevelAttribute checklog = (CheckLevelAttribute)attribute[i];

                //检查登录
                if (AdminHelper.CheckLogin())
                {
                    filterContext.Result = Content(ErrorChinese.GetErrorInfoCHN(ErrorInfo.NotLogin).ToString());
                    return;
                }

                //判断权限
                if (!new BllHelper().CheckALevel((long)AdminHelper.GetSession(), checklog.Level, WebHelper.GetMyDB))
                {
                    filterContext.Result = Content(ErrorChinese.GetAPowerInfoCHN(AdmPowerInfo.AdmInfoManager).ToString());
                    return;
                }
            }
        }

  

//创建特性

 [AttributeUsage(AttributeTargets.Class)]
    public class CheckLevelAttribute : Attribute
    {
        public AdmPowerInfo Level { get; set; }
        public CheckLevelAttribute(AdmPowerInfo level)
        {
            this.Level = level;
        }
    }

  

时间: 2024-08-29 23:32:00

ASP.Net 创建自定义类特效进行权限验证的相关文章

.NET 实现自定义ContextUser的Identity和Principal实现自定义用户信息,权限验证。

备用收藏,http://blog.csdn.net/msdnxgh/article/details/6894885 .NET 实现自定义ContextUser的Identity和Principal 在传统的.NET中,我们可以通过 [csharp] view plaincopy User.Identity.Name;//获取用户名 User.Identity.IsAuthenticated;//判断用户是否己验证 User.IsInRole("Admin");//判断用户是否含有指定角

asp.net常用自定义类

Web.config代码如下: <?xml version="1.0"?> <!-- 有关如何配置 ASP.NET 应用程序的详细信息,请访问 http://go.microsoft.com/fwlink/?LinkId=169433 --> <configuration> <appSettings> <add key="ConnectionString" value="server=.;databas

Object-c创建自定义类

OC类 1 需要接口与实现定义,虽然并非完全必要,但通常会将接口与实现放在单独的文件中. 2 接口与实现类放在单独的文件中. 3 接口与类本身同名,但文件扩展名是.h.实现文件与类同名,但文件扩展名是.m 4 要想使用自定义类,需要将类的头文件导入到使用类的代码文件中.接下来就可以通过类,实例化对象并使用类中封装功能了

Asp.net Core, 基于 claims 实现权限验证 - 引导篇

什么是Claims? 这个直接阅读其他大神些的文章吧,解释得更好. 相关文章阅读: http://www.cnblogs.com/JustRun1983/p/4708176.html http://www.cnblogs.com/jesse2013/p/aspnet-identity-claims-based-authentication-and-owin.html http://www.cnblogs.com/savorboard/p/aspnetcore-identity.html clai

java创建自定义类的数组

今天在学图论的最小生成树,开始一直在想是用邻接矩阵还是关联矩阵来表示图,但是发现这样都会有好多空间浪费.于是我就自定义一个边的类,里面包含了权值,关联的端点1,端点2,和图的表示字母.发现我想创建11条边,Bian[] = new Bian[11]时; 然后调用Bian[0].v一直报空指针异常,还百度了,发现有些小伙伴和我遇到一样的问题.于是仔细想了想,发现在java中,数组存放的是这个类型的对象,万物皆对象.我定义Bian[] 时里面应该要存放Bian[]类型先.例如以下程序 import

ASP.NET中自定义类使用Session保存信息

Session是Page类的内置对象,可以直接使用Session,但是普通的类,比如一般处理类就无法直接使用.之前我在Handler类中使用类似System.Web.HttpContext.Current.Session["userid"];但是调试显示System.Web.HttpContext.Current.Session一直为null. 解决办法:让自定义的类实现IRequiresSessionState接口,同时加入:using System.Web.SessionState

js自定义类与对象

js中创建自定义类与创建对象:js创建类与AS3,java都有很大的不同,,,下面来看看他的庐山真面目..由于js也是一个面向对象的编程语言所以也存在像其他语言那样的创建自定义的类,和通过类来创建对象.js的类是有一下三部门组成1.构造函数2.属性3.方法自定义一个类: function MyClass(id,age,name) { this.id = id; this.age = age; this.name = name; } 从这个类的定义形式可以看出,js定义类的形式和其他语言有很大的不

silverlight根据json字符串动态创建实体类

1.接收json字符串: //用JsonValue转换json字符串是为了之后获得json字符串的每行数据和每一列的列名 JsonValue jv = JsonValue.Parse(json);     //JsonValue引用自System.Json 2.创建两个类:一个为创建实体类方法,一个为调用实体类方法,实现操作并返回数据: //创建实体方法类 public class DynamicTypeBuilder { TypeBuilder tb; /// <summary> /// 构

C# MVC权限验证

前言 之前一直没怎么接触过权限验证这块,刚好公司老平台改版,就有了这篇权限验证.此篇文章大致讲解下 精确到按钮级别的验证如何实现.以及权限验证设计的参考思路(菜鸟一枚,大神勿喷). 在开发大项目的时候总会有相关的AOP面向切面编程的组件,而MVC(特指:Asp.Net MVC,以下皆同)项目中不想让MVC开发人员去关心和写类似身份验证,日志,异常,行为截取等这部分重复的代码,那我们可以通过AOP截取实现,而在MVC项目中我们就可以直接使用它提供的Filter的特性帮我们解决,不用自己实现复杂的A