Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 20928|Resposta: 3

[ASP.NET] Classe ActionFilterAttribute filtro personalizado mvc

[Copiar link]
Publicado em 06/01/2016 15:32:33 | | |

Caso os filtros introduzidos anteriormente não atendam aos requisitos, esse filtro personalizado deve ser útil caso você queira definir sua própria lógica de processamento antes e depois da execução e retorno do método de comportamento. Para personalizar um filtro, você herda a classe ActionFilterAttribute, que é uma classe abstrata que implementa as interfaces IActionFilter e IResultFilter, principalmente reescrevendo os quatro métodos virtuais para alcançar a lógica de injeção antes e depois da execução e retorno do método de comportamento

método
parâmetro
descrição
OnActionExecuting
AçãoExecutandoContexto
Execute antes que o método comportamental seja executado
OnActionExecuted
AçãoExecutadoContexto
Execute após a execução do método comportamental
OnResultExecuting
ResultadoExecutandoContexto
Execute antes que o método de comportamento retorne
OnResultExecuted
ResultadoExecutadoContexto
Execute após o retorno do método de comportamento

Os quatro métodos são executados na ordem de OnActionExecuting>OnActionExecuted>OnResultExecuting>OnResultExecuted. Os argumentos dos quatro métodos acima são herdados da classe ContollorContext. Por exemplo, um filtro personalizado é definido abaixo



Os métodos comportamentais para seu uso são definidos abaixo








Anterior:A Linode, uma conhecida provedora de serviços de hospedagem, é suspeita de ter sido hackeada, e os usuários precisam mudar suas senhas o quanto antes
Próximo:O Memcache analisa todos os principais métodos listados
 Senhorio| Publicado em 25/10/2016 10:00:36 |
 Senhorio| Publicado em 10/08/2019 22:16:41 |
Ordem de execução do filtro MVC do .NET:

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

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

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

Além disso, a mesma ordem de execução do filtro: de cima para baixo, princípio de proximidade:




Filter2=>Filter1
Publicado em 26/08/2019 13:24:19 |
Mark, aprendido
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com