ASP.NET MVC 5 Filter – get all assigned System.Attribute & ActionFilterAttribute Annotation from Controller ActionResult

ASP.NET MVC 5 Filter – get all assigned System.Attribute & ActionFilterAttribute Annotation from Controller ActionResult

 
   [TestAttribute(ID = 10)]
   [TestActionFilter(ID = 11, UserName = "")]
   public ActionResult Index() { … … }
 
 
   using System.Web.Mvc;
 
   public class TestActionFilter : ActionFilterAttribute
   {
      public int ID { get; set; }
      public string UserName { get; set; }
 
      public override void OnActionExecuting(ActionExecutingContext filterContext)
      {
         … …
 
         var list = filterContext.ActionDescriptor.GetCustomAttributes(false);
 
         foreach (var item in list)
         {
            if (item.GetType() == typeof(WebApp.Attribute.TestAttribute))
 
               (item as WebApp.Attribute.TestAttribute) … …;
 
            else if (item.GetType() == typeof(WebApp.Filter.TestActionFilter))
 
               (item as WebApp.Filter.TestActionFilter) … …;
 
            … …
         }
 
         base.OnActionExecuting(filterContext);
      }
   }