27 lines
621 B
C#
27 lines
621 B
C#
using System.Data;
|
|
using Microsoft.Data.Sqlite;
|
|
|
|
namespace Customers.Api.Database;
|
|
|
|
public interface IDbConnectionFactory
|
|
{
|
|
public Task<IDbConnection> CreateConnectionAsync();
|
|
}
|
|
|
|
public class SqliteConnectionFactory : IDbConnectionFactory
|
|
{
|
|
private readonly string _connectionString;
|
|
|
|
public SqliteConnectionFactory(string connectionString)
|
|
{
|
|
_connectionString = connectionString;
|
|
}
|
|
|
|
public async Task<IDbConnection> CreateConnectionAsync()
|
|
{
|
|
var connection = new SqliteConnection(_connectionString);
|
|
await connection.OpenAsync();
|
|
return connection;
|
|
}
|
|
}
|