我想使用sessionId来获取与该特定会话相关的所有快照。在数据库中,Shots表有一个名为Results的表的外键。Results有一个表Session的外键,它的主键是sessionId。下面的代码返回0,我尝试了多次Include等,但都不起作用。
有人知道如何解决此问题并返回与特定会话相关的镜头列表吗?
public List<Shots> GetShotListFromSession(string sessionId)
{
List<Shots> shotslist = new List<Shots>();
shotslist = _db.Shots.Where(x => x.Results.Session.Id == sessionId).ToList();
return shotslist;
}
```
[Picture of the relations in database[1]
[1]: https://i.stack.imgur.com/LfQcW.png
您可以首先选择所需的结果,然后使用.SelectMany()
检索并组合所有关联的镜头。
List<Shots> shotslist = _db.Results
.Where(r => r.Session.Id == sessionId)
.SelectMany(r => r.Shots)
.ToList();