1

我的数据库中有这两个表 -

Material

public class Material
    {
        [Required]
        [MaxLength(10)]
        public string Code { get; set; }


        [MaxLength(40)]
        public string Color { get; set; }

        [MaxLength(40)]
        public string Description { get; set; }

        [MaxLength(255)]
        public string Picture { get; set; }

        public long MaterialTypeId { get; set; }
        public virtual MaterialType MaterialType { get; set; }

    }

MaterialType

公共类 MaterialType { [MaxLength(40)] 公共字符串 MatType { get; 放; }

public virtual ICollection<Material> Materials { get; set; }

}

然后我调用一个方法,用虚拟数据填充我的所有表,但问题是Foreign Key不能为空,而且我仍然没有明显生成数据。我试图更改调用创建虚拟数据的方法的顺序,但这似乎不起作用。我想知道有没有什么简单的方法可以解决这个问题,或者我不知道如何管理这个问题?

4

1 回答 1

0

因此,在我的情况下,虚拟数据是在创建数据库时创建的,以解决不能为空的外键的问题,最简单的方法是将属性的类型显式设置为nullable. 就像我的代码一样long?。这允许我使用 null FK 用数据填充表,然后设置我需要的值。

于 2013-02-20T06:42:23.913 回答