EF核心第二级ThenInclude missworks

问题描述:

假设第一有这些模型:EF核心第二级ThenInclude missworks

Method有有一个OriginalCode OriginalCode许多Mutant小号 Mutant,有许多ParseSubTree小号

现在在Method查询时,我想的其他被加载。所以我有以下几点:

Method targetMethod = dBContext.Methods 
      .Include(me => me.OriginalCode) 
       .ThenInclude(oc => oc.Mutants) 
      .FirstOrDefault(me => me.Id == id); 

下一步是另外包括ParseSubTree。但问题是我无法访问它。请参见下面的图片:

mu is a list except object reference

问题是“mu是一个列表,而不是作为一个对象引用”!

我的错误在哪里!

TG。

+0

这只是智能感知问题 - 见[此评论](https://stackoverflow.com/questions/40319251/using-ef-core-theninclude-on-junction-tables/40319559#comment78168979_40319559)的实例。现在只需手动输入属性名称,它就可以编译和工作。 –

+0

@IvanStoev,你是对的。请发表您的评论作为答案。谢谢。可能会有人面临这个问题。 – ConductedClever

这是一个已知的Intellisense问题,集合类型导航属性的ThenInclude过载,由Completion missing members of lambda parameter in fault tolerance case #8237 Roslyn GitHub问题跟踪。

直到它被修复,只需输入属性的名称,它将成功编译并按预期工作。

.ThenInclude(mu => mu.ParseSubTrees)