ConfigArray.txt 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. using System.Collections.Generic;
  2. namespace GFGGame
  3. {
  4. public class {CfgArrayName} : SingletonBase<{CfgArrayName}>
  5. {
  6. private Dictionary<{keyType}, {CfgName}> _cfgDic = new Dictionary<{keyType}, {CfgName}>();
  7. private {CfgName}[] _allDatas;
  8. public {CfgName} GetCfg({keyType} {keyName})
  9. {
  10. if (!_cfgDic.TryGetValue({keyName}, out {CfgName} cfg))
  11. {
  12. SQLiteHelper.Instance.OpenConnection();
  13. try
  14. {
  15. var reader = SQLiteHelper.Instance.ReadTableByOneCol("{CfgArrayName}", "{keyName}", {keyName}.ToString());
  16. if (reader.Read())
  17. {
  18. cfg = new {CfgName}();
  19. cfg.setData(reader);
  20. _cfgDic.Add({keyName}, cfg);
  21. }
  22. }
  23. catch(System.Exception e)
  24. {
  25. ET.Log.Error(e);
  26. }
  27. finally
  28. {
  29. SQLiteHelper.Instance.CloseConnection();
  30. }
  31. }
  32. return cfg;
  33. }
  34. public {CfgName}[] dataArray
  35. {
  36. get
  37. {
  38. if(_allDatas == null)
  39. {
  40. List<{CfgName}> list = new List<{CfgName}>();
  41. SQLiteHelper.Instance.OpenConnection();
  42. try
  43. {
  44. var reader = SQLiteHelper.Instance.ReadFullTable("{CfgArrayName}");
  45. while (reader.Read())
  46. {
  47. var cfg = new {CfgName}();
  48. cfg.setData(reader);
  49. list.Add(cfg);
  50. _cfgDic[cfg.{keyName}] = cfg;
  51. }
  52. }
  53. catch(System.Exception e)
  54. {
  55. ET.Log.Error(e);
  56. }
  57. finally
  58. {
  59. SQLiteHelper.Instance.CloseConnection();
  60. }
  61. _allDatas = list.ToArray();
  62. }
  63. return _allDatas;
  64. }
  65. }
  66. }
  67. }