关联数据加载
Entity Framework Core 允许你在模型中使用导航属性来加载相关实体。有三种常见的 O/RM 模式可用于加载关联数据:
- 预先加载:表示从数据库中加载关联数据,作为初始查询的一部分。
- 显式加载:表示稍后从数据库中显式加载关联数据。
- 延迟加载:表示在访问导航属性时,从数据库中以透明方式加载关联数据。
预先加载
可以使用 Include 方法来指定要包含在查询结果中的关联数据。在以下示例中,结果中返回的 blogs 将使用关联的 posts 填充其 Posts 属性。
using (var context = new BloggingContext())
{
var blogs = context.Blogs
.Include(blog => blog.Posts)
.ToList();
}Code language: JavaScript (javascript)
可以在单个查询中包含多个关系的关联数据。
using (var context = new BloggingContext())
{
var blogs = context.Blogs
.Include(blog => blog.Posts)
.Include(blog => blog.Owner)
.ToList();
}Code language: JavaScript (javascript)