|
Falls die zuvor eingeführten Filter die Anforderungen nicht erfüllen, sollte dieser benutzerdefinierte Filter nützlich sein, wenn Sie Ihre eigene Verarbeitungslogik vor und nach der Ausführung und Rückgabe der Verhaltensmethode definieren möchten. Um einen Filter anzupassen, erbst du die ActionFilterAttribute-Klasse, eine abstrakte Klasse, die die Schnittstellen IAectionFilter und IResultFilter implementiert, hauptsächlich indem die vier virtuellen Methoden umgeschrieben werden, um die Injektionslogik vor und nach der Ausführung und Rückgabe der Verhaltensmethode zu erreichen Methode | Parameter | Beschreibung | OnActionAusführen | ActionExecutingContext | Führen Sie aus, bevor die Verhaltensmethode ausgeführt wird | OnActionAusgeführt | ActionExecutedContext | Ausführen, nachdem die Verhaltensmethode ausgeführt wurde | OnResultAusführen | ResultExecutingContext | Führen Sie aus, bevor die Verhaltensmethode zurückkehrt | OnResultAusgeführt | ResultExecutedContext | Ausführen, nachdem die Verhaltensmethode zurückgegeben wurde |
Die vier Methoden werden in der Reihenfolge OnActionExecuting>OnActionExecuted>OnResultExecuting>OnResultExecute ausgeführt. Die Argumente der oben genannten vier Methoden sind von der Klasse ContollorContext übernommen. Zum Beispiel wird unten ein benutzerdefinierter Filter definiert
Die Verhaltensmethoden zur Anwendung sind im Folgenden definiert
|