internal ServiceProvider(UnityConfigurationOptions options) { _options = options; _options.UnityContainer.RegisterInstance <IServiceScope>(this, new ExternallyControlledLifetimeManager()); _options.UnityContainer.RegisterInstance <IServiceProvider>(this, new ExternallyControlledLifetimeManager()); _options.UnityContainer.RegisterInstance <IServiceScopeFactory>(this, new ExternallyControlledLifetimeManager()); }
private UnityConfigurationOptions CreateOptions() { var options = new UnityConfigurationOptions(); _config(options); options.UnityContainer = options.UnityContainer ?? new UnityContainer(); ConfigureContainer(options.UnityContainer); return(options); }