public ContextualDecoratorInjectionBehavior(Container container, ContextualPredicateCollection contextualPredicates) { this.container = container; this.contextualPredicates = contextualPredicates; this.defaultBehavior = container.Options.DependencyInjectionBehavior; }
public static void EnableContextualDecoratorSupport(this ContainerOptions options) { if (GetContextualPredicates(options.Container) == null) { var predicates = new ContextualPredicateCollection(); options.DependencyInjectionBehavior = new ContextualDecoratorInjectionBehavior(options.Container, predicates); options.Container.ContainerScope.SetItem(PredicateCollectionKey, predicates); } }
public static void EnableContextualDecoratorSupport(this ContainerOptions options) { var predicates = new ContextualPredicateCollection(); if (options.Container.GetItem(PredicateCollectionKey) != null) { throw new InvalidOperationException("EnableContextualDecoratorSupport can't be called twice."); } options.DependencyInjectionBehavior = new ContextualDecoratorInjectionBehavior(options.Container, predicates); options.Container.SetItem(PredicateCollectionKey, predicates); }
public static void EnableContextualDecoratorSupport(this ContainerOptions options) { var predicates = new ContextualPredicateCollection(); if (options.Container.GetItem(PredicateCollectionKey) != null) { throw new InvalidOperationException("EnableContextualDecoratorSupport can't be called twice."); } options.ConstructorInjectionBehavior = new ContextualDecoratorInjectionBehavior(options.Container, predicates); options.Container.SetItem(PredicateCollectionKey, predicates); }
public ContextualDecoratorInjectionBehavior(Container container, ContextualPredicateCollection contextualPredicates) { this.contextualPredicates = contextualPredicates; this.defaultBehavior = container.Options.DependencyInjectionBehavior; }