Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 关注.NET Core 3.1中的种子数据_C#_Entity Framework_Entity Framework Core_Seeding - Fatal编程技术网

C# 关注.NET Core 3.1中的种子数据

C# 关注.NET Core 3.1中的种子数据,c#,entity-framework,entity-framework-core,seeding,C#,Entity Framework,Entity Framework Core,Seeding,关于Microsoft网站上的此链接,我有一个问题,其中给出了如何为数据种子的示例: 当种子设定数据时,成员没有分配任何ID,并且在成员模型中使用了[DatabaseGenerated(DatabaseGeneratedOption.None)]注释,这意味着我们将自己输入ID的数据值。因此,应用程序将如何知道哪个成员与注册实体中的哪个memberid(外键)匹配。如果您询问如何在EF模型中显示关系,请查看此示例: [Table("AppUserInRole")]

关于Microsoft网站上的此链接,我有一个问题,其中给出了如何为数据种子的示例:


当种子设定数据时,成员没有分配任何ID,并且在成员模型中使用了[DatabaseGenerated(DatabaseGeneratedOption.None)]注释,这意味着我们将自己输入ID的数据值。因此,应用程序将如何知道哪个成员与注册实体中的哪个memberid(外键)匹配。

如果您询问如何在EF模型中显示关系,请查看此示例:

    [Table("AppUserInRole")]
    public partial class AppUserInRole
    {
        [Key]
        public int Id { get; set; }
        public int UserId { get; set; }
        public short RoleId { get; set; }

        [ForeignKey(nameof(RoleId))]
        [InverseProperty(nameof(AppRole.AppUserInRoles))]
        public virtual AppRole Role { get; set; }
        [ForeignKey(nameof(UserId))]
        [InverseProperty(nameof(AppUserInfo.AppUserInRoles))]
        public virtual AppUserInfo User { get; set; }
    }

在这个示例中,我们有3个表和3个模型。
AppUserInRole与AppUserInfo和AppRole有关系。

我想我找到了答案。学生实体中未指示[DatabaseGenerated(DatabaseGeneratedOption.None)]注释。因此,它将自动生成数字本身。这是否意味着自动生成从图1开始?构造函数中的类对象将属性设置为默认值。如果需要不同的值,则需要一个构造函数来设置该值。@jdweng教程中的类上下文是SchoolContext,没有任何地方将属性设置为默认值,或者它是否意味着1作为默认值的起始值。假设我想要一个不同的值,例如,我希望数字从100开始,我如何实现这一点,请阅读官方EF核心文档的部分。您必须提供显式主键值和外键值,无论它们是否自动生成。类属性将具有默认值,如int设置为零,string设置为空字符串。Ivan的链接将属性设置为默认构造函数值以外的值。