O.R.M. 实体框架插入语句与外键约束异常冲突



我有以下类

public class Employee
{ 
    public Guid Id { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public string Gender { get; set; }
    public int Salary { get; set; }
    public string PhoneNumber { get; set; }
    public Guid DepartmentId { get; set; }
    public virtual Department Department { get; set; }
    public int Deleted { get; set; }
    public bool IsDeleted()
    {
        return this.Deleted == 1 ? true : false;
    }
    public void MarkAsDeleted()
    {
        this.Deleted = 1;
    }
    public string GetFullName()
    {
        return this.FirstName + " " + this.LastName;
    }
}
public class Department
{
    public Department()
    {
        this.Employees = new List<Employee>();
    }
    public Guid Id { get; set; }
    public string Name { get; set; }
    public virtual List<Employee> Employees { get; set; }
    public int Deleted { get; set; }
    public bool IsDeleted()
    {
        return this.Deleted == 1 ? true : false;
    }
    public void MarkAsDeleted()
    {
        this.Deleted = 1;
    }
    public void AddEmployee(Employee employee)
    {
        this.Employees.Add(employee);
    }
    public void RemoveEmployee(Employee employee)
    {
        this.Employees.Remove(employee);
    }
}

我想创建一个一对多关系,在我的配置中,我有以下代码

 [modelBuilder.Entity<Department>()
            .HasMany(l => l.Employees).
               WithRequired(r => r.Department).
               HasForeignKey(r => r.DepartmentId);

但它抛出了一个异常

插入语句与外键约束冲突FK_dbo。Employees_dbo。Departments_DepartmentId。冲突发生在数据库 \实体\, 表 \dbo 中。部门\,列 ID

谁能帮我?谢谢

似乎在某些时候您正在尝试Employee
在没有 Department .因此,这种关系正在失败。

最新更新