码迷,mamicode.com
首页 > Web开发 > 详细

判断MVC的Controller/Action是否包含某种特性两种方式

时间:2018-01-05 15:16:46      阅读:955      评论:0      收藏:0      [点我收藏+]

标签:str   ide   获得   test   tomat   exe   eth   nat   oid   

 

public override void OnActionExecuting(ActionExecutingContext filterContext)

{

//获得Controller的特性

var controllerSkip = (filterContext.ActionDescriptor as ControllerActionDescriptor).MethodInfo.ReflectedType.GetCustomAttributes(typeof(SkipLoginAttribute), true).Length;

//获取action的特性

var actionSkip = (filterContext.ActionDescriptor as ControllerActionDescriptor).MethodInfo.GetCustomAttributes(typeof(SkipLoginAttribute), true).Length;

//获得Controller的特性

var test1 = (filterContext.ActionDescriptor as ControllerActionDescriptor).MethodInfo.ReflectedType.CustomAttributes.Where(c=>c.AttributeType==typeof(SkipLoginAttribute)).Count();

//获取action的特性

var test2 = (filterContext.ActionDescriptor as ControllerActionDescriptor).MethodInfo.CustomAttributes.Where(c => c.AttributeType == typeof(SkipLoginAttribute)).Count();

//获取controller名称

var controllerName = (string)filterContext.RouteData.Values["controller"];

//获取action名称

var actionName = (string)filterContext.RouteData.Values["action"];

}

判断MVC的Controller/Action是否包含某种特性两种方式

标签:str   ide   获得   test   tomat   exe   eth   nat   oid   

原文地址:https://www.cnblogs.com/preference/p/8203426.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!