BaseMySqlDataService.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using Chloe.Infrastructure;
  2. using Chloe.MySql;
  3. using MySql.Data.MySqlClient;
  4. using System.Data;
  5. using WZExport.Models;
  6. namespace WZExport.Utilitys
  7. {
  8. internal class MySqlConnectionFactory : IDbConnectionFactory
  9. {
  10. readonly string _connString = null;
  11. public MySqlConnectionFactory(string connString)
  12. {
  13. this._connString = connString;
  14. }
  15. public IDbConnection CreateConnection()
  16. {
  17. IDbConnection conn = new MySqlConnection(this._connString);
  18. /*如果有必要需要包装一下驱动的 MySqlConnection*/
  19. //conn = new Chloe.MySql.ChloeMySqlConnection(conn);
  20. return conn;
  21. }
  22. }
  23. /// <summary>
  24. ///数据操作
  25. /// </summary>
  26. internal partial class DatabaseService
  27. {
  28. static DatabaseService _instance;
  29. /// <summary>
  30. /// 当前实例
  31. /// </summary>
  32. /// <returns></returns>
  33. internal static DatabaseService Current => _instance ?? (_instance = new DatabaseService());
  34. /// <summary>
  35. /// 构造数据库连接
  36. /// </summary>
  37. public Chloe.IDbContext GetDbContext()
  38. {
  39. var conStr = DBConfig.GetChooseConnet();
  40. return new MySqlContext(new MySqlConnectionFactory(conStr));
  41. }
  42. }
  43. }