Frage

Ich habe zwei benutzerdefinierte ActionFilters auf eine Aktion.

Im ersten des actionfilters, ich habe eine Umleitung durchgeführt, wenn eine Bedingung nicht erfüllt ist (klassische Genehmigung). Und in einem anderen Ich habe eine Umleitung durchgeführt, wenn eine andere Bedingung nicht (zB Rolle Prüfung) erfüllt ist.

Aber ich will nicht auf die zweite Action fortzusetzen, wenn der erste nicht erfüllt ist. Wie dies zu tun?

War es hilfreich?

Lösung

Zur Einstellung der filterContext.Result Eigenschaft auf jeden Nicht-Null-Wert wird die Ausführung von späteren Filter stoppen. Also, wenn Sie Ihre erste Filtersets filterContext.Result = new RedirectResult(...), der zweite Filter und Aktionsmethode wird nie ausgeführt werden. Dies ist, wie der eingebaute in [Authorization] Filter funktioniert.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top