作为 FE 开发人员,我对 Entity Framework 很陌生,在业余时间做一些业余爱好。我正在尝试与以下两个类建立多对多关系。我想要一张包含应用程序所有用户的表格。每个用户可以有多个 DuBist。每个 DuBist 可以有多个用户参与,但只有一个用户可以是活动用户。所以我尝试这样(以及许多其他事情,但对我来说这最合乎逻辑):
public class DuBist : EntityData
{
public string Title { get; set; }
public virtual User ActiveUser { get; set; }
public int ChangeCount { get; set; }
public virtual ICollection<User> Users { get; set; }
}
public class User : EntityData
{
public string UserId { get; set; }
public string Name { get; set; }
public string ImageRef { get; set; }
[JsonIgnore]
public virtual ICollection<DuBist> DuBists { get; set; }
}
当我添加一个新的 DuBist 时,我得到了这个异常:
SqlException:违反主键约束“PK_dbo.Users”。无法在对象“dbo.Users”中插入重复键。重复键值为 (0)。
模拟数据,因此其中一位用户的 ID 为“0”。
看起来我不太了解这里有什么问题,非常感谢任何帮助 =)