/// <summary> /// Create a new document store /// </summary> /// <param name="serverName">The name of the server which you want to create a document store for.</param> /// <returns></returns> private Lazy <IDocumentStore> CreateDocumentStore( string serverName) { ThrowIfDisposed(); if (!_servers.ContainsKey(serverName)) { throw new UnknownServerException("Unable to find specified server: {0}.", serverName); } var server = _servers[serverName]; return(new Lazy <IDocumentStore>(() => { var store = RavenHelpers.CreateDocumentStore(_host, server); store.Initialize(); return store; })); }
public static RavenStoreBuilder AddRavenStore( this IServiceCollection services) { services.AddSingleton(provider => { var options = provider .GetService <IOptions <RavenStoreOptions> >()?.Value; var host = provider .GetService <IHostingEnvironment>(); var store = RavenHelpers.CreateDocumentStore(host, options); store.Initialize(); return(store); }); return(new RavenStoreBuilder(services)); }