/// <summary> /// Constructor. /// </summary> /// <param name="implementationProvider">The type implementation provider to use.</param> /// <param name="options">The options used to determine the lifestyle of types.</param> public AttributeLifestyleResolver(IImplementationProvider implementationProvider, AttributeLifestyleResolverOptions options) { this.implementationProvider = implementationProvider; this.options = options; this.resolvedLifestyles = new Dictionary<Type, Lifestyle>(); }
/// <summary> /// Constructor. Initializes the class with the default extensibility providers. /// </summary> /// <param name="rootNamespace">Root namespace of the application. All auto-registration will be restricted to /// types within this namespace.</param> public AutoRegistrationOptions(string rootNamespace) { var enabledOptions = new AutoRegistrationEnabledProvider.AttributeAutoRegistrationEnabledProviderOptions(rootNamespace); AutoRegistrationEnabledProvider = new AutoRegistrationEnabledProvider.AttributeAutoRegistrationEnabledProvider(enabledOptions); ImplementationProvider = new ImplementationProvider.AutoRegistrationImplementationProvider(AutoRegistrationEnabledProvider); var attrOptions = new LifestyleResolver.AttributeLifestyleResolverOptions(); LifestyleResolver = new LifestyleResolver.AttributeLifestyleResolver(ImplementationProvider, attrOptions); RegisterMefExtensions(); RegisterDecorators = false; }