Senden mehrerer Modelle zum Anzeigen von MVC 4

8

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.

    
user1448260 16.07.2012, 05:07
quelle

3 Antworten

11

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%     
Anand 16.07.2012, 05:10
quelle
1

Machen Sie Ihre eigene Klasse aka View Model und lassen Sie sie aus beiden Modellen zusammensetzen.

    
Christensen Solutions 16.07.2012 05:08
quelle
0

Ich habe diesen Artikel sehr interessant gefunden:

Ссылка

Es bietet verschiedene Möglichkeiten, mehrere Modelle an eine Ansicht zu senden:

  • ViewData
  • ViewBag
  • Teilansicht
  • TempData
  • ViewModel
  • Tupel
Pierre Watelet 03.06.2014 09:19
quelle