Example #1
0
        /// <summary>初始库表对象
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="objDataModel"></param>
        /// <returns></returns>
        public virtual bool InitDBModel <T>(Data_Table <T> objDataModel) where T : Data_Models, IData
        {
            objDataModel.SetDB(this);

            Data_Table <T> dtTemp = this.OnDBModelCreating <T>(objDataModel);

            foreach (var item in dtTemp)
            {
                item.Init();        //主动调用初始操作,避免初始不完全
                objDataModel.Add(item, false, false, true);
            }
            objDataModel._dbPath      = dtTemp._dbPath;
            objDataModel._dbPathCache = dtTemp._dbPathCache;

            //同步缓存数据
            if (_useCache_Realtime)
            {
                string[] files = objDataModel.SyncChanges(true);
                objDataModel.SaveChanges(true);

                //清理缓存数据
                objDataModel.SyncChanges_Clean(files);
            }
            return(true);
        }