public SaleGroup Get(int group_id) { if (group_id <= 0) { return(null); } SaleGroup sale_group = null; if (_sale_groupMap.TryGetValue(group_id, out sale_group)) { _refMap[sale_group.GroupId] = GetCurrentTimeTick(); ReleaseData(false); return(sale_group); } sale_group = DbClassLoader.Instance.QueryData <SaleGroup>(ConfigDataBase.Instance.DbAccessorFactory, group_id); if (sale_group == null) { #if UNITY_EDITOR Debug.LogWarning("Invalid `group_id` value in table `sale_group` : " + group_id); #endif return(null); } _sale_groupMap.Add(group_id, sale_group); if (_refMap.ContainsKey(sale_group.GroupId) == false) { _refMap.Add(sale_group.GroupId, GetCurrentTimeTick()); } ReleaseData(false); return(sale_group); }
public void MemoryUpdate(int key, SaleGroup sale_group) { SaleGroups.RemoveAll(n => n.GroupId == key); if (_sale_groupMap.ContainsKey(key)) { _sale_groupMap.Remove(key); if (_refMap.ContainsKey(key)) { _refMap.Remove(key); } } if (sale_group != null) { SaleGroups.Add(sale_group); _sale_groupMap.Add(key, sale_group); _refMap.Add(key, DateTime.Now.Ticks); } }