实体框架级联删除错误

时间:2017-10-20 11:09:27

标签: entity-framework ef-code-first ef-migrations

我正在学习EF,并且在尝试创建数据库时出错。在表'ApplicationUserBuildings'上引入FOREIGN KEY约束'FK_dbo.ApplicationUserBuildings_dbo.Buildings_Building_BuildingID'可能会导致循环或多个级联路径。指定ON DELETE NO ACTION或ON UPDATE NO ACTION,或修改其他FOREIGN KEY约束。 无法创建约束或索引。查看以前的错误。

我理解这个错误意味着什么,但我不知道我的代码到底要做什么来摆脱if。我相信这是因为用户和建筑物以及部门和建筑物之间存在关系。这是我的代码。用户可以拥有多栋建筑,分区也可以拥有多栋建筑。

public class Division : Common.BaseModel
    {
        [Required]
        [Key]
        public int DivisionID { get; set; }

        [Required]
        public String Name { get; set; }

        public virtual ICollection<Building> Buildings { get; set; }

    }

public class Building : Common.BaseModel
    {
        [Required]
        [Key]
        public int BuildingID { get; set; }

        [Required]
        public String Name { get; set; }

        public int DivisionID { get; set; }

        public virtual Division Division { get; set; }

        public virtual ICollection<ApplicationUser> ApplicationUsers { get; set; }

    }

public class ApplicationUser 
    {

        public virtual ICollection<Building> Buildings { get; set; }

        public int DivisionID { get; set; }

        public virtual Division Divison { get; set; }
    }

0 个答案:

没有答案