我需要在单个视图 index.cshtml 中显示来自两个表(学生和年级)的数据。
我有两个部分视图 _StudentPartial 和 _GradePartial 都是强类型的。我四处搜索,每个人都说应该使用我的父模型。所以我在下面创建了一个名为 MyViewModels 的父模型,但我似乎无法让它工作。这样做的正确方法是什么?
我的模型:
public class MyBigViewModels{
public IEnumerable<Users.Models.Student> Student { get; set; }
public IEnumerable<Users.Models.Grade> Grade { get; set; }
}
我的观点():
@model MyApp.Models.MyBigViewModels
// render content for Student
@foreach (var item in Model)
{
@Html.Partial("_StudentPartial", item)
}
// Render content for Grades
@foreach (var item in Model)
{
@Html.Partial("_GradePartial", item)
}
我的部分观点
// _StudentPartial
@model IEnumerable<MyApp.Models.Student>
@foreach (var item in Model) {
@Html.DisplayFor(modelItem => item.name)
}
// _GradePartial
@model IEnumerable<MyApp.Models.Grade>
@foreach (var item in Model) {
@Html.DisplayFor(modelItem => item.letterGrade)
}
“/”应用程序中的服务器错误
传递到字典中的模型项的类型为“System.Data.Entity.Infrastructure.DbQuery
1[MyApp.Models.Students]', but this dictionary requires a model item of type 'System.Collections.Generic.IEnumerable
1[MyApp.Models.MyBigViewModels]”。