如何在两个深度级别上执行双重包含?
How to perform double include on two levels of depth?
我包括以下内容。
List<Donkey> donkeys = context.Donkeys
.Include(donkey => donkey.Monkey)
.ToList();
当然,每只猴子都有一个指向它的驴的指针。然而,我刚刚注意到也有一些 wonkies,每个 wonkey 都指向它的猴子。在这种情况下我应该如何执行额外的包含?
List<Donkey> donkeys = context.Donkeys
.Include(donkey => donkey.Monkey)
.Include(donkey => donkey.Monkies.Wonkies)
.ToList();
上面的方法是行不通的,因为小猴子不知道小猴子。这有点令人惊讶,因为如果我们查找 monkies,我们可以将 wonkies 包含在其中......所以我很确定我只是错误地理解了语法。
有没有语法可以让我把这些古怪的东西带到这张照片中?谷歌搜索什么也没有,但可能是因为我描述得不够好。
List<Donkey> donkeys = context.Donkeys
.Include(donkey => donkey.Monkies)
.Include(donkey => donkey.Monkies.Select(monkey => monkey.Wonkies))
.ToList();
或
List<Donkey> donkeys = context.Donkeys
.Include("Monkey")
.Include("Monkey.Wonkey")
.ToList();
我包括以下内容。
List<Donkey> donkeys = context.Donkeys
.Include(donkey => donkey.Monkey)
.ToList();
当然,每只猴子都有一个指向它的驴的指针。然而,我刚刚注意到也有一些 wonkies,每个 wonkey 都指向它的猴子。在这种情况下我应该如何执行额外的包含?
List<Donkey> donkeys = context.Donkeys
.Include(donkey => donkey.Monkey)
.Include(donkey => donkey.Monkies.Wonkies)
.ToList();
上面的方法是行不通的,因为小猴子不知道小猴子。这有点令人惊讶,因为如果我们查找 monkies,我们可以将 wonkies 包含在其中......所以我很确定我只是错误地理解了语法。
有没有语法可以让我把这些古怪的东西带到这张照片中?谷歌搜索什么也没有,但可能是因为我描述得不够好。
List<Donkey> donkeys = context.Donkeys
.Include(donkey => donkey.Monkies)
.Include(donkey => donkey.Monkies.Select(monkey => monkey.Wonkies))
.ToList();
或
List<Donkey> donkeys = context.Donkeys
.Include("Monkey")
.Include("Monkey.Wonkey")
.ToList();