EF核心模型包括上级实体的财产

时间:2019-11-10 08:33:41

标签: c# entity-framework asp.net-web-api ef-core-3.0

在Entity Framework Core中,我有一个上下文,其中项目有一些任务,而每个任务都有一些活动。 考虑到最近的活动,我想为每个活动添加项目标题,可以通过activity.task.projetct.title访问。

如果我将活动加载为

_context.Activities.FindAsync(id);

活动。任务为空。

我如何让EF(延迟)加载任务以及任务的项目来获取标题?

如果我急于加载

var activity = await _context.Activities
   .Include(a => a.Task).ThenInclude(f => f.Project)
   .FirstOrDefaultAsync(a => a.Id == id);

我收到此异常:

  

JsonException:检测到可能的对象周期,但不是   支持的。这可能是由于循环造成的,或者如果物体深度是   大于最大允许深度32。

问题是我不想深层加载任务和项目,而只是为了获得一级属性而浅层加载。

0 个答案:

没有答案