2014-12-15 14 views
5

Ich versuche, zwei Modelle in einer einzigen Ansicht zu übergeben, die eine Tabelle ausfüllen müssen.So übergeben Sie zwei Modelle an eine Ansicht

Hier habe ich eine Anforderung, diese Anwendung nur mit ASPX (asp.net-MVC-4) zu implementieren. Ich kann die Aufgabe mit Razor-Codes erledigen, aber nicht mit ASPX.

Ich brauche deine freundliche Hilfe die Aufgabe

+4

Erstellen Sie ein Ansichtsmodell mit zwei Eigenschaften, eine für jedes Modell. –

+0

nicht bekommen :( – Sandaru

+1

Erstellen Sie eine ViewModel-Klasse mit mehreren Modellen als Eigenschaften in ihr –

Antwort

9

Machen Sie eine Klasse zu vervollständigen, die beiden Modelle

Ihr erstes Modell enthält:

public class ModelOne { ... } 

Ihr zweites Modell:

public class ModelTwo { ... } 

Das Modell, das Sie an Ihre Ansicht weitergeben:

public class UltimateViewModel 
{ 
    public ModelOne One { get; set; } 
    public ModelTwo Two { get; set; } 
} 

Es gibt kein Problem mit Blick Modellklasse zu schaffen, alles zu kapseln, die Sie die Ansicht senden mögen. In der Tat wäre dies vorzuziehen, etwas wie das Speichern eines Ihrer Modelle in ViewState zu tun, da Sie Ihre starke Eingabe in der Ansicht erzwingen können, indem Sie sich auf alles beziehen, indem Sie @Model.One oder @Modell.Two` verwenden.

+0

danke krank versuchen dafür :) – Sandaru

+0

Muss ich Ienumerable hier verwenden – Sandaru

+0

Wenn eines Ihrer Modelle ein 'IENumerable' ist, dann verwenden Sie das stattdessen meiner geschminkten Klassen. –

Verwandte Themen