| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 | using System.Collections.Generic;namespace GFGGame{    public class {CfgArrayName} : SingletonBase<{CfgArrayName}>    {        private Dictionary<{keyType}, {CfgName}[]> _cfgsDic = new Dictionary<{keyType}, {CfgName}[]>();        public {CfgName}[] GetCfgs({keyType} {keyName})        {            if (_cfgsDic.TryGetValue({keyName}, out {CfgName}[] cfgs))            {                return cfgs;            }            List<{CfgName}> list = new List<{CfgName}>();            SQLiteHelper.Instance.OpenConnection();            try            {                var reader = SQLiteHelper.Instance.ReadTableByOneCol("{CfgArrayName}", "{keyName}", {keyName}.ToString());                while (reader.Read())                {                    var cfg = new {CfgName}();                    cfg.setData(reader);                    list.Add(cfg);                }            }            catch(System.Exception e)            {                ET.Log.Error(e);            }            finally            {                SQLiteHelper.Instance.CloseConnection();            }            cfgs = list.ToArray();            _cfgsDic.Add({keyName}, cfgs);            return cfgs;        }#if UNITY_EDITOR        private {CfgName}[] _allDatas;        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);                        }                    }                    catch(System.Exception e)                    {                        ET.Log.Error(e);                    }                    finally                    {                        SQLiteHelper.Instance.CloseConnection();                    }                    _allDatas = list.ToArray();                }                return _allDatas;            }        }#endif    }}
 |