Domanda

ho creato un nuovo ActionFilter per un'applicazione ASP.NET MVC che sto creando. Ho un'azione che accetta un HTTP Post e l'argomento del metodo dell'azione accetta un oggetto, per il quale ho creato e registrato un modello personalizzato legante.

Ho notato che all'interno della IActionFilter.OnActionExecuting il valore per filterContext.Controller.ViewData.Model è sempre null nonostante il fatto che sembra che il modello di legante è sempre richiamato prima il metodo OnActionExecuting filtro di azione. In contrasto con questo all'interno del metodo IActionFilter.OnActionExecuted della stessa azione filtrare il valore per filterContext.Controller.ViewData.Model non è nullo.

Do you guys so se questo è di progettazione o un bug? Se per la progettazione sono loro eventuali collegamenti che descrivono perché questo è? Grazie.

È stato utile?

Soluzione

Dal momento che l'azione di controllo è responsabile della creazione del modello e di passarlo al Visualizza come potrebbe esistere il modello prima dell'azione di essere chiamato? Tu non sai quale modello sta per essere creato solo dopo che è successo.

Altri suggerimenti

Sayed, di solito impostato un modello durante l'esecuzione di un'azione. Pertanto, è naturale che il modello è nullo durante l'esecuzione del OnActionExecuting che si verifica prima che venga chiamato l'azione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top