Question

J'ai créé une nouvelle ActionFilter pour une application ASP.NET MVC que je crée. J'ai une action qui accepte un Http Post et l'argument de la méthode d'action accepte un objet, pour lequel je l'ai créé et enregistré un liant modèle personnalisé.

J'ai remarqué que l'intérieur de la IActionFilter.OnActionExecuting la valeur pour filterContext.Controller.ViewData.Model est toujours null malgré le fait qu'il semble que le modèle de liaison est toujours invoqué avant que la méthode OnActionExecuting du filtre d'action. Contrairement à ce à l'intérieur de la méthode de IActionFilter.OnActionExecuted de la même action filtrer la valeur pour filterContext.Controller.ViewData.Model est non nulle.

Avez-vous les gars savoir si cela est par la conception ou un bug? Si par la conception sont leurs tous les liens qui décrivent pourquoi est-ce? Merci.

Était-ce utile?

La solution

Depuis l'action du contrôleur est responsable de la création du modèle et de la transmettre à la vue comment le modèle pourrait exister avant l'action appelée? Vous ne savez pas quel modèle va être créé qu'après il est arrivé.

Autres conseils

Sayed, vous définissez généralement un modèle lors de l'exécution d'une action. Par conséquent, il est naturel que le modèle est nulle lors de l'exécution de la OnActionExecuting qui se produit avant que l'action est appelée.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top