Ich versuche, einige Beispiele zum Erstellen eines benutzerdefinierten Modellbinders für ein eindeutiges Bindungsszenario zu finden, das ich behandeln muss, aber alle Artikel, die ich fand, waren für ältere Versionen von MVC in MVC2 nicht mehr relevant. Ich habe auf den DefaultModelBinder-Quellcode verwiesen, um ein allgemeines Gefühl dafür zu bekommen, was ich tun muss, aber es ist komplizierter als mein Szenario und ich habe Probleme, die spezifische Logik zu isolieren, die ich implementieren muss.ASP.NET MVC2 - Benutzerdefinierte Modellbinder Beispiele
Mein Ziel ist es, eine Sammlung von Checkbox/Textbox-Paaren zu nehmen und für alle Checked-Paare möchte ich ein Schlüssel/Wert-Paar des Checkbox-Wertes und des zugehörigen Textfelds erstellen. Nach dem Zusammenfassen dieser Daten muss ich eine String-Serialisierung für die Sammlung durchführen, damit ich sie in einer String-Eigenschaft des gewünschten Modelltyps speichern kann. Ich habe bereits die Daten aus dem Formular in einem überschaubaren Format gesendet, das es mir erlaubt, eine bestimmte Checkbox mit einer bestimmten Textbox zu verbinden. Es geht nur darum, herauszufinden, wie man alle Teile dorthin bringt, wo ich sie brauche.
Kennt jemand einige aktuelle Tutorials, mit denen ich mit dem Erstellen eines benutzerdefinierten Modellbinders beginnen kann?
Diese Technik funktioniert völlig für mich, aber ich hatte den Eindruck, ich sollte den 'bindingContext.ValueProvider' verwenden, anstatt direkt auf den HttpContext zuzugreifen (aus Gründen der Testbarkeit). –
@Nathan Taylor, ich verstehe. In diesem Fall könnte die hier beschriebene Technik Ihnen den Einstieg erleichtern. http://www.hanselman.com/blog/SplittingDateTimeUnitTestingASPNETMVCCustomModelBinders.aspx S. Hanselman bietet auch ein Beispiel hier zum Testen der Bindemittel: http://StackOverflow.com/Questions/253574/How-to-test-custom -model-binders-in-asp-net-mvc/589250 # 589250 –
Wenn Sie nach einer Modellbindung auf der Basis eines bestimmten (oder generischen) Typs suchen, sehen Sie sich den Beitrag hier an: http://stackoverflow.com/questions/1487005/asp-net-mvc-type-binder-for-generic-type –