C# 使用实体框架加载三个表包括和延迟加载

C# 使用实体框架加载三个表包括和延迟加载,c#,entity-framework,linq,C#,Entity Framework,Linq,我首先使用实体框架代码,我有3个表,TableA是主表,TableB是TableC的主表。我在表C中有表A的参考键,这意味着要加载表B,我必须通过表C 表A有PKA、Col1A、Col2A列 表B有PKB、Col1B、Col2B列 表C有PKC、Col1C、Col2C列 有人能告诉我如何在实体框架中合并我的Linq查询,并使用include语句加载所有这三个表并编写Linq查询,请提供任何帮助-提前感谢。我想,TableC对A和B都有依赖关系。您希望查询TableC的值以及A、B中的相应值。如果

我首先使用实体框架代码,我有3个表,
TableA
是主表,
TableB
TableC
的主表。我在
表C
中有
表A
的参考键,这意味着要加载
表B
,我必须通过
表C

表A有PKA、Col1A、Col2A列 表B有PKB、Col1B、Col2B列 表C有PKC、Col1C、Col2C列


有人能告诉我如何在实体框架中合并我的Linq查询,并使用include语句加载所有这三个表并编写Linq查询,请提供任何帮助-提前感谢。

我想,
TableC
对A和B都有依赖关系。您希望查询
TableC
的值以及A、B中的相应值。如果我的假设正确,则您正在查找:

var list = context.TableC
    .Include(t => t.TableACollection)
    .Include(t => t.TableBCollection);
仅从这些表中选择某些字段:

var list = context.TableC
    .Include(t => t.TableACollection.Select(c => c.Col1A))
    .Include(t => t.TableBCollection.Select(c => c.Col1B));

希望能有所帮助。

请先分享一些代码。这是我的需要,我可以为您提供什么代码,比如什么?类似这样的内容:var data=ClassCloner.Clean((来自Context.EnforcementSectionManager.GetAll().Include(“Branch.ViolationTypes.ViolationType”)中的x.EnforcementSectionId==id选择x)。FirstOrDefault(),“Branch”,“Branch.ViolationType.ViolationType”);返回数据;但我在使用EF时遇到了一些差距,因此我正在努力编写查询Buddy,以更好地演示问题。可能是一个表的图表,其中包含引用。因为从阅读文本推断关系逻辑不是最理想的方式:)嗨,伙计,我稍微重新构建了问题更详细地说,你能调查一下这个问题吗now@Abdul好的,那个么你们介意给我一张赞成票吗?最好的答案可能是,万一真的有帮助的话。是的,我投了,伙计