好的,所以在实体框架中,我有两个类,
public class User
{
public int ID { get; set; }
public string Username { get; set; }
}
public class Post
{
public int ID { get; set; }
public string Contents { get; set; }
public virtual ICollection<User> Likes { get; set; }
}
问题是,一个用户一次只能喜欢一个帖子——如果我喜欢currPost.Likes.Add(currUser);
,它会将该用户从它之前喜欢的任何帖子中删除,并使其像这个新帖子一样。查看数据库,事实证明 EF 没有从帖子中引用用户,而是为每个引用帖子的用户提供了一个 Post_ID 列。
我将如何强制 EF 在我的 Posts 表中创建一个数组或用户的东西,而不是它现在是如何做的?我是否误解了 ICollection 的意义(例如,我应该使用列表还是数组?)谢谢!