Exemple #1
0
 /// <summary>
 /// Add repository
 /// </summary>
 /// <param name="builder"></param>
 /// <typeparam name="TService"></typeparam>
 /// <returns></returns>
 public static ContainerBuilder RegisterCosmosRepository <TService>(this ContainerBuilder builder)
     where TService : class, IRepository
 {
     using var register = new AutofacProxyRegister(builder);
     register.RegisterRepository <TService>();
     return(builder);
 }
        /// <summary>
        /// Add Cosmos Stack Validation Support
        /// </summary>
        /// <param name="builder"></param>
        /// <returns></returns>
        public static ContainerBuilder RegisterCosmosValidation(this ContainerBuilder builder)
        {
            using var register = new AutofacProxyRegister(builder);
            register.RegisterValidation();

            return(builder);
        }
        /// <summary>
        /// Add CosmosStack FileType Sniffer Support
        /// </summary>
        /// <param name="builder"></param>
        /// <param name="configure"></param>
        /// <returns></returns>
        public static ContainerBuilder RegisterCosmosFileTypeSniffer(this ContainerBuilder builder, Action <FileTypeSnifferOptions> configure = null)
        {
            using (var register = new AutofacProxyRegister(builder))
            {
                register.AddFileTypeSniffer(configure);
            }

            return(builder);
        }
        internal AutofacServiceCollection(ContainerBuilder services, IConfigurationRoot root)
        {
            _configurationBuilder = root is null
                ? new LoggingConfigurationBuilder()
                : new DisabledConfigurationBuilder(root);
            _configurationBuilderLockedStatus = root != null;
            _services     = new AutofacProxyRegister(services);
            _settings     = new LoggingOptions();
            _sinkSettings = new Dictionary <string, ILoggingSinkOptions>();
            _additionalEnricherProviders = new List <Func <ILogEventEnricher> >();

            BeGivenConfigurationBuilder = _configurationBuilder.InitializedByGivenBuilder;
            BeGivenConfigurationRoot    = root != null;
        }
        public void ProxyTest()
        {
            var builder = new ContainerBuilder();

            using (var proxy = new AutofacProxyRegister(builder))
            {
                proxy.AddSingleton <INice, AppleNice>();
                proxy.AddSingleton <INice, BananaNice>();
                proxy.AddSingleton <INice, CarNice>(r => new CarNice(r.Resolve <IJiu>()));
            }

            var container = builder.Build();

            var resolver = new AutofacServiceResolver(container);

            var instances0 = resolver.ResolveMany <INice>();

            instances0.Count().ShouldBe(3);

            var instances1 = resolver.ResolveMany(typeof(INice));

            instances1.Count().ShouldBe(3);
        }
        /// <summary>
        /// Register Cosmos.I18N for Autofac
        /// </summary>
        /// <param name="builder"></param>
        /// <param name="optionAct"></param>
        /// <returns></returns>
        /// <exception cref="ArgumentNullException"></exception>
        public static II18NServiceCollection RegisterInternationalizationService(this ContainerBuilder builder, Action <I18NOptions> optionAct = null)
        {
            var register = new AutofacProxyRegister(builder);

            return(register.AddInternationalizationService <AutofacProxyRegister, ContainerBuilder>(optionAct));
        }
 /// <summary>
 /// I18N service collection
 /// </summary>
 /// <param name="services"></param>
 /// <param name="options"></param>
 public AutofacServiceCollection(ContainerBuilder services = null, I18NOptions options = null)
 {
     _services           = new AutofacProxyRegister(services);
     _options            = I18NOptions.Create(options);
     _translationManager = new TranslationManager();
 }
Exemple #8
0
 /// <summary>
 /// Add Cosmos Data Service
 /// </summary>
 /// <param name="builder"></param>
 /// <param name="configure"></param>
 /// <returns></returns>
 public static ContainerBuilder RegisterCosmosDataService(this ContainerBuilder builder, Action <DbContextConfig <AutofacProxyRegister> > configure = null)
 {
     using var register = new AutofacProxyRegister(builder);
     register.RegisterDataService(configure);
     return(builder);
 }