我正在为我正在关注的 Minor 完成我的最后一项任务,我正在尝试检索一个艺术家列表,每个艺术家都有多个专辑,每个专辑都有多个曲目。在这些选择中,我的任务是只为每张专辑选择一定数量的曲目,而不是全部。这就是我卡住的地方。
到目前为止,我的尝试让我明白了这一点:
var result = (from ta in db.ARTIEST
join tb in db.ALBUM on ta.ARTIEST_ID equals tb.ARTIEST_ID
join tc in db.TRACK on tb.ALBUM_ID equals tc.ALBUM_ID
where tb.TITEL == param && (
from td in db.TRACK
where td.ALBUM_ID == tb.ALBUM_ID
select td.ALBUM_ID
).Take(3).Contains(tb.ALBUM_ID)
select ta);
基本上,我的问题是,如何使用 Linq to Entities 构建一个查询,将 2 个表连接到 Artiest 表,同时将第 3 个表中的选定结果限制为 3 条记录?