Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 20928|Respuesta: 3

[ASP.NET] Filtro personalizado mvc Clase ActionFilterAttribute

[Copiar enlace]
Publicado en 6/1/2016 15:32:33 | | |

En caso de que los filtros introducidos anteriormente no cumplan los requisitos, este filtro personalizado debería ser útil si quieres definir tu propia lógica de procesamiento antes y después de ejecutar y devolver el método de comportamiento. Para personalizar un filtro, se hereda la clase ActionFilterAttribute, que es una clase abstracta que implementa las interfaces IActionFilter e IResultFilter, principalmente reescribiendo los cuatro métodos virtuales para lograr la lógica de inyección antes y después de la ejecución y devolución del método de comportamiento

método
parámetro
descripción
AcciónEjecutando
AcciónEjecutandoContexto
Ejecutar antes de que se ejecute el método conductual
AcciónEjecutada
AcciónEjecutadoContexto
Ejecutar después de ejecutar el método conductual
OnResultExecuting
ResultExecutingContext
Ejecutar antes de que el método de comportamiento devuelva
OnResultExecuted
ResultExecutedContext
Ejecutar después de que se devuelva el método de comportamiento

Los cuatro métodos se ejecutan en el orden de OnActionExecuting>OnActionExecuted>OnResultExecuting>OnResultExecuted. Los argumentos de los cuatro métodos anteriores se heredan de la clase ContollorContext. Por ejemplo, a continuación se define un filtro personalizado



Los métodos conductuales para su uso se definen a continuación








Anterior:Linode, un conocido proveedor de servicios de alojamiento, es sospechoso de haber sido hackeado, y los usuarios deben cambiar sus contraseñas lo antes posible
Próximo:Memcache analiza todos los métodos clave listados
 Propietario| Publicado en 25/10/2016 10:00:36 |
 Propietario| Publicado en 10/8/2019 22:16:41 |
Orden de ejecución del filtro MVC de .NET:

IAuthorizationFilter(OnAuthorization)----->IActionFilter(OnActionExecuting)---->

Controller Action()---->IActionFilter(OnActionExecuted) ---->IResultFilter(OnResultExecuting) ---->

view()---->IResultFilter(OnResultExecuted)

Además, el mismo orden de ejecución del filtro: de arriba a abajo, principio de proximidad:




Filter2=>Filter1
Publicado en 26/8/2019 13:24:19 |
Mark, erudito
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com