示例#1
0
            public object GetService(Type serviceType)
            {
                if (RegisteredComponents.TryGetValue(serviceType, out var registeredService))
                {
                    registeredService.WasResolved = true;
                }

                return(ServiceProvider.GetService(serviceType));
            }
示例#2
0
        public IEnumerable <object> BuildAll(Type typeToBuild)
        {
            if (RegisteredComponents.TryGetValue(typeToBuild, out var component))
            {
                component.WasResolved = true;
            }

            locked = true;
            return(builder.BuildAll(typeToBuild));
        }
示例#3
0
        public object Build(Type typeToBuild)
        {
            if (RegisteredComponents.TryGetValue(typeToBuild, out var component))
            {
                component.WasResolved = true;
            }

            locked = true;
            return(builder.Build(typeToBuild));
        }
 internal void UnregisterComponent(BaseComponent component)
 {
     RegisteredComponents.Remove(component);
     OnComponentRemovedInternal(component);
 }
 internal void RegisterComponent(BaseComponent component)
 {
     RegisteredComponents.Add(component);
     OnComponentRegisteredInternal(component);
 }