Introduccion a Dapper con C#
Dapper es un conjunto métodos de extension de la interface IDbConnection
. Es una libreria de código abierto desarrollada y mantenida por miembros del equipo de Stack Overflow.
El codigo de Dapper se encuentra alojado en Github
Al implementar métodos de extension sobre IDbConnection
le permite funcionar con cualquier proveedor de ADO.NET.
Métodos de extensión
Los métodos de extension sobre IDbConnection que proporciona Dapper son 3
- Query
- Query dinamico
- Execute
Instalación de Dapper
Dapper es un paquete de Nuget por lo que puede ser instalado de multiples formas. Para instalar Dapper en un proyecto con .NET Core o .NET 6 puedes usar la linea de comandos dotnet, Visual Studio y su interfaz gráfica para instalar paquetes. El siguiente comando instala la ultima versión de Dapper:
dotnet add package Dapper
Es importante mencionar que es necesario ejecutar el comando en la ubicación del proyecto.
Usando Dapper en un proyecto de consola
string sql = "SELECT * FROM Clientes";
using var connection = new SqlConnection("Data Source=(localdb)\\MSSQLLocalDB;Initial Catalog=minimalAPI;Integrated Security=True;");
var clientes = connection.Query<Cliente>(sql).ToList();
Dapper vs Entity Framework
Una de las ventajas de Dapper sobre Entity Framework Core es la velocidad pero con el detalle que tienes que escribir codigo SQL. A pesar de realizar la misma funcion los puedes usar en conjunto.
CRUD Con Dapper
Como ejecutar un store procedure con Dapper
Para ejecutar un procedimiento almacenado con Dapper puedes usar el siguiente codigo: