Ich habe eine ASP.NET MVC-Anwendung mit einigen Dropdown-Listen und Multi-Auswahllisten. Im Wesentlichen viele Listen von Optionen.ASP.NET MVC-Modell vs ViewData für Select-Listen
Meine Frage ist; Ist es besser, diese Listen als Teil des Modells oder als ViewData an die Ansicht zu übergeben?
Ich übergebe sie gerade als ViewData, da ich sie nicht wirklich auf dem Modell brauche und sie für die Weitergabe auf dem Modell potentiell sperrig erscheinen (ich bekomme das ausgewählte Objekt oder die Objekte, was wirklich alles ist, was ich brauche). Auf der anderen Seite muss ViewData auf die View angewendet werden, was nicht so gut ist wie das stark typisierte Modell.
Gibt es hier eine Best Practice? Selbst Vorschläge für das Für und Wider für beide würden geschätzt.
+1 Aus Gründen der Konvention haben wir alles getan, um magische Saiten zu entfernen. Nicht nur für das, was du erwähnt hast, denn Intellisense ist fantastisch, aber der eigentliche Kick ist, dass magische Strings immer gut zusammenpassen. Dann haben sie die Möglichkeit, zur Laufzeit zu explodieren. Autsch ... Stark typisierte Dinge explodieren zur Kompilierzeit, wodurch Fehler viel leichter zu erkennen sind. –