は、どのように私はテーブルのように見える形式で、次のデータベース・エンティティからのデータを表示していました:Linqリクエストから集められたエンティティを使用してデータを表形式でソートして表示するにはどうすればよいですか?
public class Attendance
{
public int AttendanceID { get; set; }
public int CourseID { get; set; }
public int StudentID { get; set; }
public int AttendanceDay { get; set; }
public bool Present { get; set; }
public virtual Course Course { get; set; }
public virtual Student Student { get; set; }
}
は私がCourseID == Xを持っていた出席デシベルエントリ内のすべての行を検索したいと思います。その後、私は理にかなっている方法でそれを表示するには、私の見解では、この情報をソートできるようにする必要があります
AttendanceData = Attendance.Where(s => s.CourseID == x); // I think
:だから私のようなものを使用します。私は、すべての現在/未存在の値が左側にStudentIDs、上部にAttendanceDaysが列挙されたテーブルでソートされた画面上のデータを持っていたいと思います。
この情報を並べ替えて表示するにはどうすればよいですか?
UPDATE:(MVCのWebGridと一緒に)次のコードを使用して
- 私は私のビューに表示されるように、ある種のグリッドを得ることができます。
コントローラー:
IEnumerable<Attendance> model = db.Attendance.Where(s => s.CourseID == 4);
return View(model);
ビュー:
@model IEnumerable<MyProject.Models.Attendance>
<div>
@{
var grid = new WebGrid(Model, defaultSort: "Name");
}
@grid.GetHtml()
</div>
しかし、グリッドが私のニーズのために有用である方法で編成されていません。
表示された表の一番上に、次のように表示します。
1日| 2日目| 3日目| 「出席者の日」(学生がサインアップするコースの作成時に指定される)の最大値まで等。
私は読むために表示された表の左側をしたい: 学生ID 1 学生ID 5 学生ID 6 学生証など。 。データセット内のすべての生徒が表示されるまで
は私が私のコントローラにこの線に沿って何かを使用する必要があると思う:
var model = from s in db.Attendance
where s.CourseID == 4
group s.AttendanceDay by s.StudentID into t
select new
{
StudentID = t.Key,
Days = t.OrderBy(x => x)
};
return View(model);
しかし、私はのIEnumerable <が必要> MVCのWebGridを使用して、私のビューに戻って - 私はまだ、どこかに取得しています道に沿って少し失われた。正しい方向に微調整できますか?
私は、私が行った進歩を含む上記の投稿を更新しました。 – Ecnalyr