我有这个 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; }
}
}
问题是,每当我加载此视图时,我都会收到一条错误消息,指出我将错误的模型传递给了字典,并且它没有指定哪个部分视图导致了问题。每个部分都有不同的模型类型,一个 IEnumerable 称为 Product,另一个 IEnumerable 称为 Service,Invoice 部分视图具有一个称为 InvoiceViewModel 的视图模型。
任何人都可以解释如何进行这项工作吗?顺便说一句,我对 Razor 和 MVC 有点陌生。
更新
我收到此错误消息:
传入字典的模型项的类型为“ProOptInteractive.ViewModels.InvoiceViewModel”,但此字典需要“ProOptInteractive.ViewModels.InvoicePageViewModel”类型的模型项。