private static Dictionary <String, List <IPageCache> > loadPageCacheMaps() { Dictionary <String, List <IPageCache> > dic = new Dictionary <String, List <IPageCache> >(); foreach (KeyValuePair <String, Type> kv in ObjectContext.Instance.TypeList) { if (kv.Value.IsAbstract) { continue; } if (rft.IsInterface(kv.Value, typeof(IPageCache))) { IPageCache obj = (IPageCache)ObjectContext.GetByType(kv.Value); List <Type> actions = obj.GetRelatedActions(); addActions(dic, actions, obj); } } return(dic); }