internal ServicesByNameBuilder(IServiceCollection services, NameBuilderSettings settings) { _services = services; _registrations = settings.CaseInsensitiveNames ? new Dictionary <string, MetaContainer <TMeta> >(StringComparer.OrdinalIgnoreCase) : new Dictionary <string, MetaContainer <TMeta> >(); }
internal ServicesByNameBuilder(Type serviceType, ServiceContainer services, NameBuilderSettings settings) { _serviceType = serviceType; _services = services; _registrations = settings.CaseInsensitiveNames ? new Dictionary <string, Type>(StringComparer.OrdinalIgnoreCase) : new Dictionary <string, Type>(); }
/// <summary> /// Entry point for name-based registrations. This method should be called in order to start building /// named registrations for <typeparamref name="TService"/>"/> /// </summary> /// <param name="services">Service collection</param> /// <param name="settings">Customization settings</param> /// <returns><see cref="ServicesByNameBuilder<TService>"/> which is used to build multiple named registrations</returns> public static ServicesByNameBuilder <TService> AddByName <TService>(this ServiceContainer services, NameBuilderSettings settings) { return(new ServicesByNameBuilder <TService>(services, settings)); }
/// <summary> /// Entry point for name-based registrations. This method should be called in order to start building /// named registrations for <typeparamref name="TService" />"/> /// </summary> /// <param name="services">Service collection</param> /// <param name="settings">Customization settings</param> /// <returns><see cref="ServicesByNameBuilder<TService>" /> which is used to build multiple named registrations</returns> public static ServicesByNameBuilder <TService, TMeta> AddByName <TService, TMeta>(this IServiceCollection services, NameBuilderSettings settings) { return(new ServicesByNameBuilder <TService, TMeta>(services, settings)); }
/// <summary> /// Entry point for name-based registrations. This method should be called in order to start building /// named registrations for <paramref name="serviceType"/>"/> /// </summary> /// <param name="services">Service collection</param> /// <param name="serviceType">Service type</param> /// <param name="settings">Customization settings</param> /// <returns><see cref="ServicesByNameBuilder"/> which is used to build multiple named registrations</returns> public static ServicesByNameBuilder AddByName(this ServiceContainer services, Type serviceType, NameBuilderSettings settings) { return(new ServicesByNameBuilder(serviceType, services, settings)); }