Pergunta

Eu criei um novo ActionFilter para um aplicativo ASP.NET MVC que estou criando. Eu tenho uma ação que aceita uma postagem HTTP e o argumento do método de ação aceita um objeto, para o qual eu criei e registrei um fichário de modelo personalizado.

Eu notei que dentro do IActionFilter.OnActionExecuting o valor para filterContext.Controller.ViewData.Model é sempre null Apesar do fato de parecer que o fichário do modelo é sempre invocado antes do filtro de ação OnActionExecuting método. Em contraste com isso dentro do IActionFilter.OnActionExecuted método da mesma ação filtra o valor para filterContext.Controller.ViewData.Model não é nulo.

Vocês sabem se isso é por design ou um bug? Se, por design, são seus links que descrevem por que isso é? Obrigado.

Foi útil?

Solução

Como a ação do controlador é responsável por criar o modelo e passá -lo para a visão, como poderia existir o modelo antes da chamada ação? Você não sabe qual modelo será criado até depois de acontecer.

Outras dicas

Sayed, você geralmente define um modelo durante a execução de uma ação. Portanto, é natural que o modelo seja nulo durante a execução do OnactionExecution, que ocorre antes que a ação seja chamada.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top