私はこの Index.cshtml クラスを持っています:
@model ProOptInteractive.ViewModels.InvoicePageViewModel
@{
ViewBag.Title = "Index";
}
<div>@Html.Partial("ListServices", Model.Services)</div>
<div>@Html.Partial("ListProducts", Model.Products)</div>
<div>@Html.Partial("Invoice", Model.InvoiceViewModel)</div>
そして、これは私の InvoicePageViewModel です:
namespace ProOptInteractive.ViewModels
{
public class InvoicePageViewModel
{
public InvoiceViewModel InvoiceViewModel { get; set; }
public IEnumerable<Service> Services { get; set; }
public IEnumerable<Product> Products { get; set; }
}
}
問題は、このビューをロードするたびに、間違ったモデルをディクショナリに渡したというエラーが表示され、どの部分ビューが問題を引き起こしているかが特定されないことです。各パーシャルには異なるモデル タイプがあり、1 つは Product と呼ばれる IEnumerable、もう 1 つは Service と呼ばれる IEnumerable、および InvoiceViewModel と呼ばれるビューモデルを持つ Invoice パーシャル ビューです。
この作業を行う方法を説明できる人はいますか? ところで、私は Razor と MVC には少し慣れていません。
アップデート
次のエラー メッセージが表示されます。
ディクショナリに渡されたモデル アイテムのタイプは「ProOptInteractive.ViewModels.InvoiceViewModel」ですが、このディクショナリにはタイプ「ProOptInteractive.ViewModels.InvoicePageViewModel」のモデル アイテムが必要です。