Ich muss eine Ansicht der Rechnung erstellen. Ich habe viele Modelle (Tabellen) und ich möchte alle Daten von mehreren Modellen in einer Ansicht der Rechnung anzeigen. Ich habe eine leere (ohne Modell) Ansicht erstellt und in eine Teilansicht eingefügt. Einer von Teilansicht einer Ansicht mit einem Modell zurück, aber diese Lösung zurückkehrt mir Ausnahme ... Das ist meine Arbeit: Das ist meine Aktion in der Steuerung:Mehrere Modelle in einer einzigen Ansicht anzeigen
public ActionResult Customer()
{
var data = db.Customer;
return PartialView("Index", data);
}
public ActionResult Invoice()
{
var data = db.Invoice;
return PartialView("Index", data);
}
public ActionResult Dealer()
{
var data = db.Dealer;
return PartialView("Index", data);
}
public ActionResult Paid()
{
var data = dane.Paid;
return PartialView("Index", data);
}
public ActionResult Products()
{
var data = dane.Products;
return PartialView("Index", data);
}
Dies ist einer der Teilansicht:
@model IEnumerable<Invoice_v1._0.Models.Products>
<table class="table">
<tr>
<th>
@Html.DisplayNameFor(model => model.Name)
</th>
<th>
@Html.DisplayNameFor(model => model.Price)
</th>
<th>
@Html.DisplayNameFor(model => model.Amount)
</th>
<th></th>
</tr>
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.Name)
</td>
<td>
@Html.DisplayFor(modelItem => item.Price)
</td>
<td>
@Html.DisplayFor(modelItem => item.Amount)
</td>
</tr>
}
</table>
Dies ist meine "Index" Ansicht mit Teilansichten:
@Html.Partial("_Customer")
@Html.Partial("_Invoice")
@Html.Partial("_Dealer")
@Html.Partial("_Paid")
@Html.Partial("_Products")
Wie kann ich sie lösen?
Was/wo ist die Ausnahme? –
Verwenden Sie '@ Html.Action()', wenn Sie eine Controller-Methode aufrufen möchten, die eine Teilansicht mit Daten zurückgibt. (oder verwenden Sie ein Ansichtsmodell, das alle aufgefüllten Daten enthält) –
Ich bemerke auch, dass es nicht notwendig ist, Teilansichten zu verwenden, nur weil Sie verschiedene "Tabellen" in Ihrer Ansicht haben. Die idiomatische Methode besteht darin, ein ViewModel zu erstellen, das _all_ die für die Ansicht erforderlichen Daten enthält und dieses als "Modell" für Ihre Ansicht verwendet. Teilansichten sind mehr für _reusable_ views, die in verschiedene Parent-Views gelangen können. –