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;
}
}