public void Use_With_Dependency_Injection() { // Register with SQL LocalDB services var services = new ServiceCollection() .AddLogging((builder) => builder.AddXUnit(OutputHelper)) .AddSqlLocalDB(); IServiceProvider serviceProvider = services.BuildServiceProvider(); using (IServiceScope scope = serviceProvider.CreateScope()) { ISqlLocalDbApi localDB = scope.ServiceProvider.GetService <ISqlLocalDbApi>(); ISqlLocalDbInstanceInfo instance = localDB.GetDefaultInstance(); ISqlLocalDbInstanceManager manager = instance.Manage(); if (!instance.IsRunning) { manager.Start(); } using (SqlConnection connection = instance.CreateConnection()) { connection.Open(); // Use the SQL connection... } } }
private async Task Initialize() { if (!_instance.IsRunning) { _manager.Start(); } using (var connection = _instance.CreateConnection()) { await connection.OpenAsync(); var tempPath = Environment.GetEnvironmentVariable("Temp"); var createDatabase = $"CREATE DATABASE [{_databaseName}] on (name='{_databaseName}', " + $"filename='{tempPath}\\{_databaseName}.mdf')"; using (var command = new SqlCommand(createDatabase, connection)) { await command.ExecuteNonQueryAsync(); } } var sqlConnectionStringBuilder = _instance.CreateConnectionStringBuilder(); sqlConnectionStringBuilder.InitialCatalog = _databaseName; ConnectionString = sqlConnectionStringBuilder.ToString(); var settings = new MsSqlStreamStoreV3Settings(ConnectionString); _msSqlStreamStoreV3 = new MsSqlStreamStoreV3(settings); await _msSqlStreamStoreV3.CreateSchemaIfNotExists(); }
public static void CreateConnection_Throws_If_Instance_Is_Null() { // Arrange ISqlLocalDbInstanceInfo instance = null; // Act and Assert Assert.Throws <ArgumentNullException>("instance", () => instance.CreateConnection()); }
public void Create_A_Sql_LocalDB_Instance() { using (var localDB = new SqlLocalDbApi(OutputHelper.ToLoggerFactory())) { ISqlLocalDbInstanceInfo instance = localDB.GetOrCreateInstance("MyInstance"); ISqlLocalDbInstanceManager manager = instance.Manage(); if (!instance.IsRunning) { manager.Start(); } using (SqlConnection connection = instance.CreateConnection()) { connection.Open(); // Use the SQL connection... } manager.Stop(); } }