J'essaie de trouver quelques exemples de construction d'un classeur de modèle personnalisé pour un scénario de liaison unique que je dois gérer, mais tous les articles que j'ai trouvés étaient pour des versions plus anciennes de MVC qui sont n'est plus pertinent dans MVC2. J'ai référencé le code source de DefaultModelBinder pour essayer d'avoir une idée générale de ce que je dois faire, mais c'est plus compliqué que mon scénario et j'ai du mal à isoler la logique spécifique que j'ai besoin de mettre en œuvre.ASP.NET MVC2 - Exemples de liants de modèle personnalisé
Mon but est de prendre une collection de paires Checkbox/Textbox et pour toutes les paires Checked je voudrais créer une paire clé/valeur de la valeur Checkbox et la valeur de la Textbox associée. Après l'agrégation de ces données, je dois effectuer une sérialisation de chaîne sur la collection afin de pouvoir la stocker dans une propriété de chaîne du type Model souhaité. J'ai déjà les données envoyées à partir du formulaire dans un format gérable qui me permettra de relier une Checkbox donnée à une Textbox spécifique, c'est juste une question de trouver comment obtenir toutes les pièces où j'en ai besoin.
Est-ce que quelqu'un connaît des tutoriels à jour qui peuvent m'aider à construire un classeur de modèle personnalisé?
Cette technique fonctionne totalement pour moi, mais j'avais l'impression que je devais utiliser le 'bindingContext.ValueProvider' plutôt que d'accéder directement au HttpContext (pour des raisons de testabilité). –
@Nathan Taylor, je vois. Dans ce cas, la technique décrite ici peut vous aider à démarrer. http://www.hanselman.com/blog/SplittingDateTimeUnitTestingASPNETMVCCustomModelBinders.aspx S. Hanselman fournit également un exemple ici sur la façon de tester le classeur: http://stackoverflow.com/questions/253574/how-to-test-custom -model-binders-in-asp-net-mvc/589250 # 589250 –
En outre, si vous recherchez une liaison de modèle basée sur un type spécifique (ou générique), consultez le post ici: http://stackoverflow.com/questions/1487005/asp-net-mvc-modèle-lieur-pour-type-générique –