Abrufen der Liste der benutzerdefinierten Attribute für die aktuelle Aktion/controller in ASP.NET MVC

Check-out die Beispiel-code aus http://lukesampson.com/post/471548689/entering-and-exiting-https-with-asp-net-mvc geschrieben ASP.NET MVC2, bemerkte ich, dass Sie überprüfen können, ob eine benutzerdefinierte Attribut angewendet wird, um die aktuelle Aktion oder controller durch den Zugriff auf filterContext.ActionDescriptor und filterContext.ActionDescriptor.ControllerDescriptor jeweils:

public class ExitHttpsIfNotRequiredAttribute : FilterAttribute, IAuthorizationFilter {
    public void OnAuthorization(AuthorizationContext filterContext) {
        //snip

        //abort if a [RequireHttps] attribute is applied to controller or action
        if(filterContext.ActionDescriptor.ControllerDescriptor.GetCustomAttributes(typeof(RequireHttpsAttribute), true).Length > 0) return;
        if(filterContext.ActionDescriptor.GetCustomAttributes(typeof(RequireHttpsAttribute), true).Length > 0) return;

        //snip
    }
}

Was wäre das ASP.NET MVC 1-Methode zu überprüfen, die action und controller für ein benutzerdefiniertes Attribut? In ASP.NET MVC 1 es gibt keine filterContext.ActionDescriptor, dass ich sagen kann.

InformationsquelleAutor DavGarcia | 2010-08-25

Schreibe einen Kommentar