| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 | using System.Collections.Generic;namespace GFGGame{    public class {CfgArrayName} : SingletonBase<{CfgArrayName}>    {            private Dictionary<{keyType}, {CfgName}> _cfgDic = new Dictionary<{keyType}, {CfgName}>();        private {CfgName}[] _allDatas;        public {CfgName} GetCfg({keyType} {keyName})        {             if (!_cfgDic.TryGetValue({keyName}, out {CfgName} cfg))            {                SQLiteHelper.Instance.OpenConnection();                try                {                    var reader = SQLiteHelper.Instance.ReadTableByOneCol("{CfgArrayName}", "{keyName}", {keyName}.ToString());                    if (reader.Read())                    {                        cfg = new {CfgName}();                        cfg.setData(reader);                        _cfgDic.Add({keyName}, cfg);                    }                }                catch(System.Exception e)                {                    ET.Log.Error(e);                }                finally                {                    SQLiteHelper.Instance.CloseConnection();                }            }            return cfg;        }                public {CfgName}[] dataArray        {            get            {                if(_allDatas == null)                {                    List<{CfgName}> list = new List<{CfgName}>();                    SQLiteHelper.Instance.OpenConnection();                    try                    {                        var reader = SQLiteHelper.Instance.ReadFullTable("{CfgArrayName}");                        while (reader.Read())                        {                            var cfg = new {CfgName}();                            cfg.setData(reader);                            list.Add(cfg);                            _cfgDic[cfg.{keyName}] = cfg;                        }                    }                    catch(System.Exception e)                    {                        ET.Log.Error(e);                    }                    finally                    {                        SQLiteHelper.Instance.CloseConnection();                    }                    _allDatas = list.ToArray();                }                return _allDatas;            }        }    }}
 |