我有一个需要多对多关系的用户类和角色类。假设用户有一个集合或角色,反之亦然,我可以弄清楚如何在流畅的 API 中指定映射,例如(在角色映射中):
this.HasMany(t => t.Users)
.WithMany(t => t.Roles)
.Map(m =>
{
m.ToTable("UsersToRoles");
m.MapLeftKey("RoleId");
m.MapRightKey("UserId");
});
但是,虽然我确实希望用户(类)拥有一组角色,但我不希望角色(类)拥有一组用户,因为通常每个角色中可能有很多用户 - 而且我不希望访问 Role 实例可能导致加载所有这些用户的风险。所以两个问题:
我有理由担心吗?(我在 .edmx 的早期有记忆问题,其中虚假的双向关系会导致巨大的性能问题,直到被删除)?
如果是这样,如果两个类都没有集合,我该如何指定多对多关系?
谢谢