1

猜猜,我在急切加载嵌套图时缺少向 EF 通知导航属性。请让我知道我错过了什么?

我的简化对象图

Product (ProductId, IEnumerable<Task>, ProductStatusId, ProductStatus)

ProductStatus (ProductStatusId, Description)

Task (TaskId, ProductId, TaskStatusId, TaskStatus)

TaskStatus (TaskStatusId, Description)

尝试加载 Product => 及其 Tasks => 及其 TaskStatus

.Include(p => p.ProductStatus)
.Include(p => p.Tasks)
.Include(p => p.Tasks.Select(t => t.TaskStatus))

收到以下错误:

{"无效的列名 'TaskStatus_ProductStatusId'。\r\n无效的列名 'ProductStatusId'}

4

1 回答 1

0

这应该工作

  _yourContext.Product   
  .Include(p => p.ProductStatus)
  .Include(p => p.Tasks.Select(t => t.TaskStatus))

你不需要

  .Include(p => p.Tasks)

因为“.Include(p => p.Tasks.Select(t => t.TaskStatus))”将从任务集合中获取任务和任务状态。

于 2016-09-16T13:06:22.213 回答