【发布时间】:2018-09-15 01:39:08
【问题描述】:
我一直在尝试使用 Entity Framework,在遇到以下错误后,我尝试使用 ThenInclude 来解决它。
无法绑定传递给 Include 运算符的表达式“[x].ModelA.ModelB”
但现在看来我对它为什么确实解决了问题缺乏一些了解
这有什么区别:
.Include(x => x.ModelA.ModelB)
还有这个:
.Include(x => x.ModelA).ThenInclude(x => x.ModelB)
【问题讨论】:
-
有一个字符串版本可以让你通过
"ModelA.ModelB". -
.Include(x => x.ModelA.ModelB)在 EF6 中工作,但在 EF Core 中不起作用。在 EF Core 中,您必须使用“ThenInclude”。 -
@RavingDev :我很好奇 EF Core 上这种行为背后的原因,是否有任何文章解释它?我找不到任何人。
-
在这种情况下没有区别。您使用的是哪个确切的 EF Core 版本?因为两者都适用于最新的 EFC 2.0.2
-
@IvanStoev 我正在使用 EFC 1.1.1
标签: c# entity-framework entity-framework-core