我有一个集合内有集合的实体。我在加载收藏内容时遇到问题。
// Site
public class Site{
protected Site()
{
SiteUsers = new HashSet<SiteUser>();
}
public virtual ICollection<SiteUser> SiteUsers { get; set; }
}
// Site User
public class SiteUser
{
protected SiteUser()
{
Roles = new HashSet<SiteUserRole>();
}
public virtual ICollection<SiteUserRole> Roles { get; protected set; }
}
// SiteUserRole
public class SiteUserRole
{
protected SiteUserRole()
{
}
private SiteUserRole(Guid id, SiteRoleEnum role)
{
Id = id;
Role = role;
DateCreated = DateTimeOffset.UtcNow;
}
public Guid Id { get; set; }
public SiteRoleEnum Role { get; set; }
public DateTimeOffset DateCreated { get; set; }
public static SiteUserRole Create(Guid id, SiteRoleEnum role)
{
return new SiteUserRole(id, role);
}
}
//I put this on DbContext
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Site>().HasMany(r => r.SiteUsers);
}
当我查询网站时,它没有&#39;包括siteuser的角色 return _context.Sites.Include(c =&gt; c.SiteUsers);
答案 0 :(得分:0)
您没有包含角色:
context.Sites.Include(c => c.SiteUsers).ThenInclude(su => su.Roles);