MySqlContext.cs 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Configuration;
  4. using System.Data.Common;
  5. using System.Data.Entity;
  6. using System.Data.Entity.ModelConfiguration.Conventions;
  7. using System.Data.SQLite;
  8. using System.Linq;
  9. using System.Text;
  10. using System.Threading.Tasks;
  11. using XdCxRhDW.Entity;
  12. namespace XdCxRhDW.Repostory
  13. {
  14. public class MySqlContext: DbContext
  15. {
  16. public MySqlContext(DbConnection con)
  17. : base(con, true)
  18. {
  19. }
  20. public MySqlContext(string nameOrConnectionString="MySql")
  21. : base(nameOrConnectionString)
  22. {
  23. }
  24. public Task<List<T>> SqlQueryAsync<T>(string sql)
  25. {
  26. return this.Database.SqlQuery<T>(sql).ToListAsync();
  27. }
  28. public Task<T> SqlQueryOneAsync<T>(string sql)
  29. {
  30. return this.Database.SqlQuery<T>(sql).FirstOrDefaultAsync();
  31. }
  32. protected override void OnModelCreating(DbModelBuilder modelBuilder)
  33. {
  34. this.Database.Log = msg =>
  35. {
  36. };
  37. //modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
  38. //modelBuilder.Configurations.AddFromAssembly(typeof(RHDWContext).Assembly);//自动加载Entity-Type
  39. //var sqliteConnectionInitializer = new SqliteCreateDatabaseIfNotExists<RHDWContext>(modelBuilder);
  40. //Database.SetInitializer(sqliteConnectionInitializer);
  41. base.OnModelCreating(modelBuilder);
  42. }
  43. public DbSet<XlInfo> XlInfos { set; get; }
  44. public DbSet<TaskInfo> TaskInfos { set; get; }
  45. public DbSet<TaskSig> TaskSigs { set; get; }
  46. public DbSet<TxInfo> TxInfos { get; set; }
  47. public DbSet<SatInfo> SatInfos { get; set; }
  48. public DbSet<FixedStation> FixedStation { get; set; }
  49. public DbSet<SigInfo> SigInfos { get; set; }
  50. public DbSet<SigDelay> SigDelays { get; set; }
  51. public DbSet<TargetInfo> TargetInfos { get; set; }
  52. public DbSet<SysSetings> SysSetings { get; set; }
  53. public DbSet<TaskRunnningInfo> TaskRunnningInfos { get; set; }
  54. //以下为Range分区表
  55. public DbSet<LogRes> LogRes { set; get; }
  56. public DbSet<StationRes> StationRes { get; set; }
  57. public DbSet<CxRes> CxRes { get; set; }
  58. public DbSet<CgRes> CgRes { get; set; }
  59. public DbSet<CgXgfRes> CgXgfRes { get; set; }
  60. public DbSet<PosRes> PosRes { get; set; }
  61. public DbSet<CheckRes> CheckRes { get; set; }
  62. }
  63. }