示例#1
0
        private object GetInstance(RegisteredObject registeredObject)
        {
            if (registeredObject.Instance == null || registeredObject.LifeCycle == LifeCycle.Transient)
            {
                registeredObject.CreateInstance(this);
            }

            return(registeredObject.Instance);
        }
示例#2
0
        private object GetInstance(RegisteredObject registeredObject)
        {
            var lifecycleCache = registeredObject.Lifecycle.Get().FindCache();
            var instance       = lifecycleCache.Get(registeredObject.InstanceKey);

            if (instance == null)
            {
                instance = registeredObject.CreateInstance(this);
                lifecycleCache.Set(registeredObject.InstanceKey, instance);
            }

            return(instance);
        }