0

作为 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”。

看起来我不太了解这里有什么问题,非常感谢任何帮助 =)

4

0 回答 0