Frage

Ich versuche, eine Ansicht, die zeigt zwei verschiedene Modelle einzurichten. Zum Beispiel habe ich eine Ansicht „Details“, dass zeigen Details eines Kunden; was ich vorbei mein Kundenmodell. Ich möchte auch einen Abschnitt auf der Seite unter den Kundeninformationen haben (Ich dachte über eine Teilansicht verwenden), die Listen ihrer Haustiere (für einen Tierarzt Praxis). Ich habe versucht, eine Teilansicht einzurichten und im Dialogfeld angezeigt ich das „Haustier“ Modell zu verwenden, war aber erfolglos in meinem Versuch. Jede Hilfe wäre sehr geschätzt.

War es hilfreich?

Lösung

Eine Teilansicht würde für Haustiere Liste groß sein. Erstellen Sie einfach einen stark typisierten .ascx wie:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<PetList>" %>

Sie es dann von der Hauptseite angezeigt werden soll. Sie mögen die gleiche Haustier Listensteuerung auf anderen Seiten verwenden.

Andere Tipps

Erstellen Sie eine Klasse, die die Kundendaten und die Pet Daten enthält:

public class CustomerDetailsViewModel
{
    public Customer Customer { get; set; }
    public IList<Pet> Pets { get; set; }
}

Das ist Ihr Modell für die Ansicht. Verwendung Model.Customer für Ihre Kundendaten innerhalb der Ansicht, und übergeben Model.Pets auf Ihre Teilansicht, die ist stark Typ IList<Pet>.

Erstellen Sie eine stongly typisierte Ansicht, die einen Typ wie

Einnahme
Pair<Customer, Pet> (or Pair(of Customer, Pet)) if using VB

oder einfach nur ein

übergeben
Pair<Customer, Pet> 

Objekt in der Ansicht Datenobjekt.

Dann passiert das Pet Objekt in der Teilansicht.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top