1、新建数据上下文类,继承DbContext
/// <summary> /// 数据上下文类,用于访问数据库 /// </summary> public class AntiUAVDBContext : DbContext { /// <summary> /// 创建构造函数,构造函数继承DbContext类的构造函数,通过DbContext类的构造函数创建数据库连接 /// DbContext类的构造函数里面的参数是数据库连接字符串,通过该连接字符串去创建数据库,在App.config中配置 /// </summary> public AntiUAVDBContext() :base("DefaultConnection") { } /// <summary> /// 定义数据集合 /// 用于创建表 /// </summary> public DbSet<DeviceInfo> DeviceInfos { get; set; } protected override void OnModelCreating(DbModelBuilder modelBuilder) { //禁止表名是复数形式 //默认生成的表是复数,即加上s modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); } }
2、创建数据库
方式一:
using (var context = new AntiUAVDBContext())
{
if (!context.Database.Exists()) { context.Database.Create(); }
}
方式二:
context.Database.CreateIfNotExists();
方式三:
context.Database.Initialize(true);
3、数据初始化
//将创建的数据添加到上下文中 context.DeviceInfos.AddRange(list); //调用SaveChanges方法,将数据插入到数据库 context.SaveChanges();
4、当实体结构发生修改,更新数据库结构