首先使用c#中的代码为外键设定种子

本文关键字:种子 代码 | 更新日期: 2023-09-27 17:58:35

我在为数据库设定种子并为外键赋值时遇到问题。

这是我的UserPains:模型

public partial class UserPain
    {
        public int Id { get; set; }
        public int ScoredBy { get; set; }
        public DateTime LastUpdated { get; set; }
        public virtual Defect Defects { get; set; }
    }

这是我的缺陷模型:

public partial class Defect
{
    public int Id { get; set; }
    public string Title { get; set; }
    public string Description { get; set; }
}

所以当我播种时:

new UserPain { ScoredBy = 1, LastUpdated = DateTime.Now }

UserPain表中标记为Defects_Id的值为null。如何将Defects_Id的值分配给缺陷表中现有缺陷的Id?

首先使用c#中的代码为外键设定种子

您可以将Defect属性设置为从数据库创建或提取的Defect实例。或者,您可以向UserPain对象添加一个ID字段,并将其设置为:

public partial class UserPain
{
    // ...
    [Column("Defects_Id")]
    public int DefectId { get; set; }
    [ForeignKey("DefectId")]
    public virtual Defect Defect { get; set; }
}

现在,您也可以在没有实例的情况下设置DefectId。在此过程中,我为您指定了物业名称!