Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 如何获得已应用于特定控制器操作的授权筛选器列表?_Asp.net Mvc_Reflection_Asp.net Mvc 4_Asp.net Mvc Filters - Fatal编程技术网

Asp.net mvc 如何获得已应用于特定控制器操作的授权筛选器列表?

Asp.net mvc 如何获得已应用于特定控制器操作的授权筛选器列表?,asp.net-mvc,reflection,asp.net-mvc-4,asp.net-mvc-filters,Asp.net Mvc,Reflection,Asp.net Mvc 4,Asp.net Mvc Filters,在asp.net MVC应用程序中,一位同事试图在网站的布局控件中构建一组依赖于角色的UI元素,而我的同事希望根据用户的角色关系生成一个显示或不显示的html扩展 同事希望能够测试特定链接链接到的操作,并检查用户是否有权访问该链接。为了做到这一点,最好针对控制器操作运行所有授权过滤器 为此,必须检索为特定操作注册的所有授权筛选器 有人知道如何仅获取与特定控制器操作相关联的授权过滤器属性吗?类似的内容 typeof(MyController).GetType() .GetMethod("actio

在asp.net MVC应用程序中,一位同事试图在网站的布局控件中构建一组依赖于角色的UI元素,而我的同事希望根据用户的角色关系生成一个显示或不显示的html扩展

同事希望能够测试特定链接链接到的操作,并检查用户是否有权访问该链接。为了做到这一点,最好针对控制器操作运行所有授权过滤器

为此,必须检索为特定操作注册的所有授权筛选器

有人知道如何仅获取与特定控制器操作相关联的授权过滤器属性吗?

类似的内容

typeof(MyController).GetType()
.GetMethod("action")
.GetCustomAttributes(true)
.Where(attr=>attr is IAuthorizationFilter).Cast<IAuthorizationFilter>()
typeof(MyController).GetType()
.GetMethod(“操作”)
.GetCustomAttributes(true)
.Where(attr=>attr是IAuthorizationFilter).Cast()
但你必须伪造过滤上下文。就我个人而言,为了测试的目的,我会将过滤器功能从过滤器本身中分离出来。因此,您将拥有过滤器将调用的实际“authorizator”对象