我如何建模以下内容:一个用户有很多关注者并关注很多用户。同一个用户有许多被阻止的用户(Twitter 有点功能)。
public class ApplicationUser : IdentityUser
{
public virtual ICollection<User> Following { get; set; }
public virtual ICollection<User> Followers { get; set; }
public virtual ICollection<User> BlockedUsers { get; set; }
}
public class User
{
public ApplicationUser User { get; set; }
public string UserId { get; set; }
public ApplicationUser Follower { get; set; }
public string FollowerId { get; set; }
}
到目前为止我的实现:
public void Configure(EntityTypeBuilder<User> builder)
{
builder.HasKey(k => new { k.UserId, k.FollowerId });
builder.HasOne(l => l.User)
.WithMany(a => a.Followers)
.HasForeignKey(l => l.UserId);
builder.HasOne(l => l.Follower)
.WithMany(a => a.Following)
.HasForeignKey(l => l.FollowerId);
}
如何实现被阻止的用户字段?
public virtual ICollection<User> BlockedUsers { get; set; }
偶然的你
相关分类