Ich habe zwei Modellklassen, jede ist eine Tabelle in einer Datenbank. Ein Modell heißt "Clothes" und das andere "Shoes".
Ich möchte den Inhalt jeder Tabelle in derselben Rasiereransicht anzeigen, aber MVC lässt mich nur ein Modell an die Ansicht senden.
%Vor%Gibt es eine Möglichkeit, mehr als ein Modell an eine Rasiereransicht zu senden?
Wenn nicht, wie wird der Inhalt eines anderen Modells in einer Ansicht angezeigt, für die bereits ein anderes Modell übergeben wurde? Danke für den Rat.
Machen Sie entweder eine View-Modellklasse, die sowohl die Klasse als auch ihr Objekt enthält. Es wäre dann sicher zu tippen.
%Vor%Die andere einfache Möglichkeit, dies mit ViewBag zu tun. Es verwendet die dynamische Funktion, die zu C # 4 hinzugefügt wurde. Es ermöglicht einem Objekt dynamisch Eigenschaften hinzuzufügen. Es ist auch Typ Safe
%Vor%Sie können ViewData auch verwenden, um Objekte an HTML zu übergeben. Das wäre nicht typsicher. Es erfordert Casting
%Vor%Machen Sie Ihre eigene Klasse aka View Model und lassen Sie sie aus beiden Modellen zusammensetzen.
Ich habe diesen Artikel sehr interessant gefunden:
Es bietet verschiedene Möglichkeiten, mehrere Modelle an eine Ansicht zu senden:
Tags und Links asp.net-mvc asp.net-mvc-3 razor asp.net