/// <summary>
        /// Создает экземпляр класса <see cref="INamedResolver{TDiscriminator, TInterface}"/>.
        /// </summary>
        /// <param name="serviceProvider">Провайдер служб.</param>
        /// <param name="namedRegistrator">Регистратор именованных типов.</param>
        public NamedResolver(IServiceProvider serviceProvider, INamedRegistrator <TDiscriminator, TInterface> namedRegistrator)
        {
            _serviceProvider = serviceProvider;
            var registeredTypesAccessor = (IHasRegisteredTypeInfos <TDiscriminator, TInterface>)namedRegistrator;

            _registeredDescriptors = registeredTypesAccessor.RegisteredTypes;
            _defaultDescriptor     = registeredTypesAccessor.DefaultDescriptor;
            _equalityComparer      = registeredTypesAccessor.EqualityComparer;
        }
 /// <summary>
 /// Создает экземпляр класса <see cref="NamedRegistratorBuilder{TDiscriminator, TInterface}" />.
 /// </summary>
 /// <param name="services">Конфигуратор сервисов.</param>
 /// <param name="namedRegistrator">Регистратор именованных типов.</param>
 /// <param name="equalityComparer">Механизм сравнения дискриминаторов.</param>
 /// <param name="serviceLifetime">Жизненный цикл типа.</param>
 internal NamedRegistratorBuilder(
     IServiceCollection services,
     INamedRegistrator <TDiscriminator, TInterface> namedRegistrator,
     IEqualityComparer <TDiscriminator?> equalityComparer,
     ServiceLifetime serviceLifetime
     )
 {
     _namedRegistrator = namedRegistrator;
     _equalityComparer = equalityComparer;
     _services         = services;
     _serviceLifetime  = serviceLifetime;
 }
 public void Setup()
 {
     _namedRegistrator = new NamedRegistrator <string, ITest>(StringComparer.OrdinalIgnoreCase);
 }