private static void DoCacheDispose(string key, object value, CacheRemovedReason reason) { if (reason == CacheRemovedReason.Expired) { _contextSet.Foreach((ckey, context) => { if (context != null && MathUtils.DiffDate(context.ExpireDate).TotalSeconds > 3600) { _contextSet.Remove(ckey); } return(true); }); } }