Ninject.Activation.Caching.Cache.GetItemFromCache C# (CSharp) Méthode

GetItemFromCache() private static méthode

private static GetItemFromCache ( IContext context, object scope, CacheEntry>.Multimap entries ) : object
context IContext
scope object
entries CacheEntry>.Multimap
Résultat object
        private static object GetItemFromCache(IContext context, object scope, Multimap<IBinding, CacheEntry> entries)
        {
            foreach (CacheEntry entry in entries[context.Binding])
            {
                if (!ReferenceEquals(entry.Scope.Target, scope))
                    continue;

                if (context.HasInferredGenericArguments)
                {
                    var cachedArguments = entry.Context.GenericArguments;
                    var arguments = context.GenericArguments;

                    if (!cachedArguments.SequenceEqual(arguments))
                        continue;
                }

                return entry.Reference.Instance;
            }

            return null;
        }