entity-framework - 如何使用 EF Core 加载导航属性?

标签 entity-framework entity-framework-core

在 EF6 中我们可以执行以下操作:

context.Set<TEntity>().Attach(entity);
context.Entry(entity).Collection("NavigationProperty").Load();

由于 EF Core 将“100% 严格类型化”,因此他们删除了 Collection 函数。我们应该用什么来代替?

如何加载附加实体的导航属性?也就是说,我是否有办法在我已经检索到的实体上调用 .Include() 和 .ThenInclude() 之类的东西?

最佳答案

Entity Framework Core v1.1 中添加了显式加载。 请参阅Microsoft Docs

来自文档:

using (var context = new BloggingContext())
{
    var blog = context.Blogs
    .Single(b => b.BlogId == 1);

    context.Entry(blog)
        .Collection(b => b.Posts)
        .Load();

    context.Entry(blog)
        .Reference(b => b.Owner)
        .Load();
}

关于entity-framework - 如何使用 EF Core 加载导航属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40065489/

相关文章:

c# - 从 EF Core 2.1 升级到 3.1 后无法在项目之间进行数据库迁移

c# - EF Core 无法确定抽象类中外键表示的关系

java - Spring JPA : When I delete an entity, 相关实体也被删除

c# - 错误 : No connection string in application config file. .. 但有一个

.net - 如何在 Entity Framework 中查找最后插入行的标识?

c# - 防止在多对多表上按约定创建索引

c# - 简化多次使用相同代码的 lambda 表达式

asp.net-core - Entity Framework Core - 访问实体上的集合的最佳方式?

c# - SQL Server 地理与 DbGeography

entity-framework - "No executable found matching command "点网 ef ""