Mit ASP.Net MVC 2, gibt es eine Möglichkeit, die RedirectToAction() Methode der Controller Klasse innerhalb einer Klasse zu verwenden, die auf der AuthorizeAttribute
Klasse basiert?Kann RedirectToAction() in einer benutzerdefinierten AuthorizeAttribute-Klasse verwendet werden?
public class CustomAttribute : AuthorizeAttribute {
protected override bool AuthorizeCore(HttpContextBase context) {
// Custom authentication goes here
return false;
}
public override void OnAuthorization(AuthorizationContext context) {
base.OnAuthorization(context);
// This would be my ideal result
context.Result = RedirectToAction("Action", "Controller");
}
}
Ich bin auf der Suche nach einem Weg, um den Benutzer zu einer bestimmten Controller/Aktion wieder direkt, wenn sie die Authentifizierung fehl, statt sie auf die Anmeldeseite zurück. Ist es möglich, dass die URL erneut für diesen Controller/diese Aktion generiert wird und dann RedirectResult()? Ich versuche, die Versuchung zu vermeiden, die URL nur hart zu codieren.
Danke, das funktioniert. Guter Haken bei der Verwendung von HandleUnauthorizedRequest - Ich habe OnAuthorization verwendet, weil ich es in einem anderen Tutorial/einer anderen Diskussion gesehen habe (sie hatten eine benutzerdefinierte Eigenschaft, die gesetzt wurde, als die Authentifizierung fehlschlug und die Umleitung ausgelöst wurde). –
@LanceMcNearney Was würde ich im Parameter filterContext übergeben? – Pomster
@Craig Stuntz Was würde ich als FilterContext übergeben? – Pomster