feat: Define data models and set up DB connection with Dapper

This commit is contained in:
2025-07-01 11:10:28 -03:00
parent 76635a0da9
commit 656137f2bc
12 changed files with 121 additions and 34 deletions

View File

@@ -0,0 +1,9 @@
using System.Data;
namespace Mercados.Infrastructure.Persistence
{
public interface IDbConnectionFactory
{
IDbConnection CreateConnection();
}
}

View File

@@ -0,0 +1,24 @@
using Mercados.Infrastructure.Persistence;
using Microsoft.Data.SqlClient;
using Microsoft.Extensions.Configuration;
using System.Data;
namespace Mercados.Infrastructure
{
public class SqlConnectionFactory : IDbConnectionFactory
{
private readonly string _connectionString;
public SqlConnectionFactory(IConfiguration configuration)
{
_connectionString = configuration.GetConnectionString("DefaultConnection")
?? throw new ArgumentNullException(nameof(configuration), "La cadena de conexión 'DefaultConnection' no fue encontrada.");
}
public IDbConnection CreateConnection()
{
// Dapper se encargará de abrir y cerrar la conexión automáticamente.
return new SqlConnection(_connectionString);
}
}
}