void Obj_AfterQuery(object sender, QueryObject.QueryEventArgs e) { if (e.Result == null) { return; } string typefullname = e.Type.FullName; string key = typefullname + ".query:" + SecurityUtil.MD5_Hash(e.Sql); string root_key = JCache.GetRootCacheKey(typefullname); List <string> sub_keys = JCache.Get <List <string> >(root_key) ?? new List <string>(); if (!sub_keys.Contains(key)) { sub_keys.Add(key); } JCache.Insert(root_key, sub_keys); JCache.Insert(key, e.Result); }
void Obj_Batch(object sender, BatchEventArgs e) { JCache.RemoveHierarchyCache(JCache.GetRootCacheKey(e.Type.FullName)); }