Config.cs 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. using System;
  2. using System.IO;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Data.OleDb;
  6. using System.Data;
  7. using System.Collections.Generic;
  8. using DbCommon.BusinessCore.BaseCore;
  9. using DbCommon.Enties.DbModels;
  10. using System.Xml.Serialization;
  11. namespace DbCommon.Function
  12. {
  13. public class Config
  14. {
  15. private static Config m_instance;
  16. private static readonly object m_locker = new object();
  17. public static Config Instance
  18. {
  19. get
  20. {
  21. if (m_instance == null)
  22. {
  23. lock (m_locker)
  24. {
  25. if (m_instance == null)
  26. {
  27. m_instance = new Config();
  28. }
  29. }
  30. }
  31. return m_instance;
  32. }
  33. }
  34. public static DbCommonConfig DbConfig = new DbCommonConfig();
  35. public string WmsConnString
  36. {
  37. get
  38. {
  39. return $"Data Source=\"{DbConfig.DataSource}\";Initial Catalog=\"{DbConfig.InitialCatalog}\";uid={DbConfig.uid};pwd={DbConfig.pwd}";
  40. }
  41. }
  42. public string HostString
  43. {
  44. get { return DbConfig.DataSource; }
  45. }
  46. private Config()
  47. {
  48. try
  49. {
  50. string s = System.Reflection.Assembly.GetExecutingAssembly().Location;
  51. FileInfo finfo = new FileInfo(s);
  52. string currPath = finfo.DirectoryName;
  53. string configDir = Path.Combine(currPath, "PMS", "Config");
  54. string configFile = Path.Combine(configDir, "DbCommonConfig.xml");
  55. DirectoryInfo dir = new DirectoryInfo(configDir);
  56. if (!dir.Exists)
  57. {
  58. dir.Create();
  59. }
  60. XmlSerializer serializer = new XmlSerializer(DbConfig.GetType());
  61. if (!File.Exists(configFile))
  62. {
  63. using (TextWriter tw = new StreamWriter(configFile))
  64. {
  65. serializer.Serialize(tw, DbConfig);
  66. }
  67. }
  68. else
  69. {
  70. using (TextReader tr = new StreamReader(configFile))
  71. {
  72. DbConfig = (DbCommonConfig)serializer.Deserialize(tr);
  73. }
  74. }
  75. }
  76. catch (Exception)
  77. {
  78. }
  79. }
  80. }
  81. public class DbCommonConfig
  82. {
  83. public string DataSource { get; set; } = ".";
  84. public string InitialCatalog { get; set; } = "WMS";
  85. public string uid { get; set; } = "sa";
  86. public string pwd { get; set; } = "123";
  87. }
  88. }