zoukankan      html  css  js  c++  java
  • Entity Framework Code-First(19):Seed Data

    Seed Database in Code-First:

    You can insert data into your database tables during the database initialization process. This will be important if you want to provide some test data for your application or to provide some default master data for your application.

    To seed data into your database, you have to create custom DB initializer, as you created in DB Initialization Strategy, and override the Seed method. The following example shows how you can provide default data for the Standard table while initializing the School database:

    public class SchoolDBInitializer : DropCreateDatabaseAlways<SchoolDBContext>
    {
        protected override void Seed(SchoolDBContext context)
        {
            IList<Standard> defaultStandards = new List<Standard>();
    
            defaultStandards.Add(new Standard() { StandardName = "Standard 1", Description = "First Standard" });
            defaultStandards.Add(new Standard() { StandardName = "Standard 2", Description = "Second Standard" });
            defaultStandards.Add(new Standard() { StandardName = "Standard 3", Description = "Third Standard" });
    
            foreach (Standard std in defaultStandards)
                context.Standards.Add(std);
    
            base.Seed(context);
        }
    }

    Now, set this DB initializer class in context class as below.

    public class SchoolContext: DbContext 
    {
            
        public SchoolContext(): base("SchoolDBConnectionString") 
        {
            Database.SetInitializer(new SchoolDBInitializer());
    
        }
        public DbSet<Student> Students { get; set; }
        public DbSet<Standard> Standards { get; set; }
    }
  • 相关阅读:
    MongoDB学习(1)—在Windows系统中安装MongoDB
    在windows系统的文件右键菜单中增加“命令提示符”
    python基础五之字典
    python基础四之列表
    python基础三之字符串
    python基础二
    python基础一
    二叉搜索树与双向链表
    记录一下Comparator的用法
    根节点到叶子节点路径之和为target
  • 原文地址:https://www.cnblogs.com/purplefox2008/p/5644366.html
Copyright © 2011-2022 走看看