using Microsoft.Data.SqlClient; using System.Data; namespace GestionIntegral.Api.Data { public class DbConnectionFactory { private readonly string _connectionString; // El constructor recibe IConfiguration para leer el appsettings.json public DbConnectionFactory(IConfiguration configuration) { _connectionString = configuration.GetConnectionString("DefaultConnection") ?? throw new ArgumentNullException(nameof(configuration), "Connection string 'DefaultConnection' not found."); } // Método para crear y abrir una nueva conexión public IDbConnection CreateConnection() { // Usamos SqlConnection del paquete Microsoft.Data.SqlClient var connection = new SqlConnection(_connectionString); // Nota: No abrimos la conexión aquí. Dapper la abre y cierra automáticamente. return connection; } } }