首页 > 代码库 > 小白学习之Code First(三)

小白学习之Code First(三)

上下文Context类中的base构造器的几个方法重置(1、无参 2、database name 3 、 连接字符串)

无参:如果基类base方法中无参,code first将会以 :{Namespace}.{Context class name} 为名字创建一个服务

 

技术分享
 1   public class CSContext:DbContext
 2     {
 3         public CSContext():base("name=ConnStr") //创建名为配置文件中指定的数据库
 4         {
 5         }
 6         //public CSContext() : base("databaseDemo")//创建名为databaseDemo的数据库
 7         //{
 8 
 9         //}
10         //public CSContext() : base()  //创建名为CodeFirstTest1.CSContext的数据库
11         //{
12 
13         //}
14         //学生和班级的集合
15         public DbSet<StudentInfo> StudentInfos { get; set; }
16         public DbSet<ClassInfo> ClassInfos { get; set; }
17         /// <summary>
18         /// 派生上下文模型初始化后,该模型锁定之前
19         /// </summary>
20         /// <param name="modelBuilder">DbModelBuilder 用于将 CLR 类映射到数据库架构。 此以代码为中心的方法称作“Code First”,可用于生成实体数据模型 (EDM) 模型</param>
21         protected override void OnModelCreating(DbModelBuilder modelBuilder)
22         {
23             // 首次访问数据库时调用数据库初始值设定项 默认值是:CreateDatabaseIfNotExists<TContext>  
24             //下面的值为模型发生改变时,删除数据库重建数据库    
25             Database.SetInitializer(new DropCreateDatabaseIfModelChanges<CSContext>());
26             base.OnModelCreating(modelBuilder);
27         }
28     }
View Code

 

小白学习之Code First(三)