我在使用 EF 的 C# 中有一个奇怪的行为
这是一个带有 EF Core 1.1.0 的 .NET Core 项目
"Microsoft.EntityFrameworkCore.SqlServer": "1.1.0",
"Microsoft.EntityFrameworkCore.Tools": "1.1.0-preview4-final",
我创建了两个模型,“用户”和“组”
public class User
{
public int Id { get; set; }
public string name { get; set; }
public string lastName { get; set; }
public List<Group> Groups { get; set; }
}
public class Group
{
public int Id { get; set; }
public string groupName { get; set; }
public virtual User User { get; set; }
}
结果应该给我一个用户及其组的列表。
现在奇怪的部分:
结果从数据库返回,我查看 allUser,组为空
我查看上下文以查看组
组已满:
![Groups are filled](https://i.stack.imgur.com/rxfIb.png)
现在我再次查看 allUser Result 并神奇地
组填充在每个用户项中。
组在 User 中填写:
![Groups are filled inside User](https://i.stack.imgur.com/gEMhI.png)
我真的很感谢任何帮助!
看起来您正在延迟加载实体。
您可以使用以下方式立即加载它们.Include
.
var allUsers = context.Users.Include(user => user.Groups).ToList();
此方法加载第一个实体(用户)以及相关实体作为查询的一部分(组)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)