Dans ASP.NET MVC, je rencontre une erreur de type incorrect lors du rendu d'un contrôle utilisateur avec l'objet saisi correctement.
-
08-06-2019 - |
Question
Je rencontre une erreur du type :"L'élément de modèle passé dans le dictionnaire est de type FooViewData mais ce dictionnaire nécessite un élément de modèle de type bar" même si je transmets un objet du type correct (barre) pour le contrôle utilisateur saisi.
La solution
Ce que @MattMitchell a dit est probablement la raison pour laquelle vous voyez cette erreur.
Si tu veux savoir pourquoi;en effet, lorsque vous transmettez null comme paramètre controlData lors de l'utilisation de RenderUserControl(), le framework essaiera plutôt de transmettre les données de vue du contexte de vue actuel au contrôle utilisateur (voir la méthode UserControlExtensions.DoRendering dans System.Web.Mvc).
Autres conseils
Ce qui s'est probablement produit, c'est que l'objet fourni lors du rendu du contrôle utilisateur est en réalité nul.