private AutofacServiceProvider CreateContainer( IServiceCollection initialCollection, ContextualInitializer contextualInitializer, out IContainer registry) { var builder = new ContainerBuilder(); initialCollection.AddEnyimMemcached(); builder.RegisterType <IMemcachedClient>() .As <IMemcachedClient>() .AsSelf() .InstancePerLifetimeScope() .InstancePerDependency() .PropertiesAutowired(); builder.RegisterInstance(this); contextualInitializer?.Invoke(builder); registry = builder.Build(); var provider = new AutofacServiceProvider(registry); return(provider); }
public Application( IServiceCollection initialCollection, ContextualInitializer contextualInitializer = null) { Container = CreateContainer(initialCollection, contextualInitializer, out var reg); // Log = Container.GetService<ILogger<Application>>(); Registry = reg; // InitializeHumanizerDictionary(); }