using Microsoft.Extensions.Logging; namespace WeaponPaints { public class Database { private readonly Func _connectionFactory; public Database(Func connectionFactory) { _connectionFactory = connectionFactory; } public async Task GetConnectionAsync() { var connection = _connectionFactory(); await connection.OpenAsync(); return connection; } } }