2 つのテーブル (学生と学年) のデータを 1 つのビュー index.cshtml に表示する必要があります。
2 つの部分ビュー _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]' 型です。