【发布时间】:2013-08-23 23:56:42
【问题描述】:
假设以下表格
人物
- 身份证
- 姓名
个人团队
- 身份证
- person_id
- is_supervisor
- team_id
团队
- 身份证
时间表
- 身份证
- team_id
我想获得主管的所有时间表。我得到了主管的名字,然后我需要选择他是哪个团队的主管。然后选择这些团队的所有时间表。
我相信以下查询可以
var allTimeSheets = ctx.PersonTeam.Where(y => y.Person.name == supervisor_name).Where(x => x.is_supervisor == true).Select(z => z.Team).Select(t => t.TimeSheet);
在这个操作之后我无法理解 allTimeSheets 是一个
IQueryable<ICollection<TimeSheet>>
我期待更多
<ICollection<TimeSheet>>
或任何IEnumrable。
那么问题是:
- 为什么我会得到这样的结果?
- 如何获得 TimeSheet[] 我得到 IQueryable > 的地方?
【问题讨论】:
-
在查询末尾添加
.ToList。 -
ToList() 给出了一个 List
>,并不是我真正需要的。
标签: c# linq iqueryable