gpt4 book ai didi

c# - 急切加载实体树

转载 作者:行者123 更新时间:2023-11-30 20:52:27 26 4
gpt4 key购买 nike

我知道如何eager load multiple levels of entities with an include statement .但是如果我正在加载一棵树呢?考虑这种实体层次结构:

  • 阿尔法
    • Bravo//一个集合
      • Charlie//一个集合
      • Delta//一个集合

现在假设我想加载添加了所有 Bravo、Charlie 和 Delta 实体的 Alpha 实体。这可以通过单个 Include 语句完成吗?我怀疑答案是否定的,但我想确定一下。

否则,我怀疑我会简单地使用两个 Include 语句。但即便如此,我也犹豫了,因为这意味着我必须引用 Bravo 两次(每个 Include 一次)语句,我不知道这是否会混淆 EF。

最佳答案

它可以像这样用两个包含来完成:

var entities = context.Alphas.Include("Bravos.Charlies")
.Include("Bravos.Deltas");

或者这个:

var entities = context.Alphas.Include(a => a.Bravos.Select(b => b.Charlies))
.Include(a => a.Bravos.Select(b => b.Deltas));

显然 First 更优雅。

关于c# - 急切加载实体树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20872659/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com