我有三张桌子
首先存储用户组 ugroup - 主键 groupname - 组名
第二个存储用户 uid - 主键 ugroup - int 用户名 等等 .....
第三个表包含每个用户的教师列表 teachId - 主键 uid - int ..........
所以这个查询在控制器
中工作正常var viewUsers= db.UsersGroup.Include("Users").ToList();
并在视野中
我可以超过其中的所有群组和用户
@foreach(var ug in @Model.viewUsers)
{
ug.groupName
foreach(var u in ug.Users)
{
u.UserName;
}
}
所以,但我想在视图中构建表格以显示此信息:
<caption>GroupName</caption>
<th>UserName</th><th>Count of teachers</th>
<td> John Smith</td><td>3</td>
那么我应该如何在我的视图中构建一个查询来构建表格?
我是否可以提供一些链接,我在哪里可以阅读有关如何使用EF对我的数据库进行varios查询(如加入uinions和otheres),我不明白如何工作Include()方法
我尝试将我的上一个字符串改为:db.UserGroups.Include(ug => ug.Users)
,但它不起作用:(
谢谢。
答案 0 :(得分:0)
var viewUsers= db.UsersGroup.Include("Users.Teachers").ToList();
然后在视图中,您可以获得每个用户的教师列表
@foreach(var ug in @Model.viewUsers)
{
ug.groupName
foreach(var u in ug.Users)
{
u.UserName;
<th>u.Teachers.Count</th>
foreach(var teacher in u.Teachers)
{
<td>teacher.Name</td>
}
}
}