private bool actionSame( ICacheFilter cr, MvcContext ctx )
        {
            Dictionary<String, String> actions = cr.Actions;

            foreach (KeyValuePair<String, String> kv in actions) {

                if (ctx.controller.GetType().FullName.Equals( kv.Key ) == false &&
                    ctx.controller.GetType().BaseType.FullName.Equals( kv.Key ) == false
                    ) continue;

                if (actionSame( kv.Value, ctx )) return true;
            }

            return false;
        }
        private bool actionSame(ICacheFilter cr, MvcContext ctx)
        {
            Dictionary <String, String> actions = cr.Actions;

            foreach (KeyValuePair <String, String> kv in actions)
            {
                if (ctx.controller.GetType().FullName.Equals(kv.Key) == false &&
                    ctx.controller.GetType().BaseType.FullName.Equals(kv.Key) == false
                    )
                {
                    continue;
                }

                if (actionSame(kv.Value, ctx))
                {
                    return(true);
                }
            }

            return(false);
        }
示例#3
0
 public void Filter(ICacheFilter <string, string> cacheFilter) => cacheIndeces.ForEach(x => x.Filter(cacheFilter));