using System; using System.Collections.Generic; using System.Data.Entity; using System.Linq; using System.Text; using System.Threading.Tasks; using SQLite.CodeFirst; using XzXdDw.App.Model; using System.Data.Entity.ModelConfiguration.Conventions; using System.Data.SQLite; using System.Data.Entity.Infrastructure.Interception; namespace XzXdDw.App.EFContext { internal class RHDWContext: DbContext { protected override void OnModelCreating(DbModelBuilder modelBuilder) { //modelBuilder.Entity().Map(m => //{ // m.MapInheritedProperties(); // m.ToTable("TaskInfo"); //}); this.Database.Log = msg => { Console.WriteLine(msg); }; modelBuilder.Conventions.Remove(); modelBuilder.Configurations.AddFromAssembly(typeof(RHDWContext).Assembly); var sqliteConnectionInitializer = new SqliteCreateDatabaseIfNotExists(modelBuilder); Database.SetInitializer(sqliteConnectionInitializer); DbInterception.Add(new SqliteInterceptor());//拦截器 base.OnModelCreating(modelBuilder); } public RHDWContext() : base("DbCon") { } //配置使用的连接名 public DbSet XlInfos { set; get; } public DbSet TaskInfos { set; get; } public DbSet TxInfos { get; set; } public DbSet SatInfos { get; set; } public DbSet CxRes { get; set; } public DbSet CgRes { get; set; } public DbSet PosRes { get; set; } public DbSet XDPosRes { get; set; } public DbSet XZPosRes { get; set; } public DbSet SysSetings { get; set; } } }