Looking for dapper Keywords? Try Ask4Keywords

Dapper.NETEmpezando con Dapper.NET


Observaciones

¿Qué es Dapper?

Dapper es un micro-ORM para .Net que extiende su IDbConnection , simplificando la configuración de consultas, la ejecución y la lectura de resultados.

¿Como lo consigo?

Tareas comunes

Versiones

Versión Notas Fecha de lanzamiento
1.50.0 core-clr / asp.net 5.0 compilación contra RTM 2016-06-29
1.42.0 2015-05-06
1.40.0 2015-04-03
1.30.0 2014-08-14
1.20.0 2014-05-08
1.10.0 2012-06-27
1.0.0 2011-04-14

Instala Dapper desde Nuget

O bien buscar en la GUI de Visual Studio:

Herramientas> NuGet Package Manager> Administrar paquetes para la solución ... (Visual Studio 2015)

Captura de pantalla de la interfaz del administrador de paquetes de Visual Studio con Dapper seleccionado.

O ejecute este comando en una instancia de Nuget Power Shell para instalar la última versión estable

Install-Package Dapper
 

O para una versión específica.

Install-Package Dapper -Version 1.42.0
 

Usando Dapper en C #

using System.Data;
using System.Linq;
using Dapper;

class Program
{
    static void Main()
    {
        using (IDbConnection db = new SqlConnection("Server=myServer;Trusted_Connection=true"))
        {
            db.Open();
            var result = db.Query<string>("SELECT 'Hello World'").Single();
            Console.WriteLine(result);
        }
    }
}
 

Envolver la conexión en un bloque de Using cerrará la conexión

Usando Dapper en LINQPad

LINQPad es ideal para probar consultas de bases de datos e incluye la integración de NuGet . Para usar Dapper en LINQPad, presione F4 para abrir las Propiedades de la consulta y luego seleccione Agregar NuGet . Busque dapper dot net y seleccione Agregar a la consulta . También querrá hacer clic en Agregar espacios de nombres y resaltar Dapper para incluir los Métodos de Extensión en su consulta LINQPad.

Una vez que Dapper esté habilitado, puede cambiar el menú desplegable de Idioma al Programa C # , asignar los resultados de la consulta a las clases C # y usar el método .Dump () para inspeccionar los resultados:

void Main()
{
	using (IDbConnection db = new SqlConnection("Server=myServer;Trusted_Connection=true")){
		db.Open();
		var scalar = db.Query<string>("SELECT GETDATE()").SingleOrDefault();
		scalar.Dump("This is a string scalar result:");
		
		var results = db.Query<myobject>(@"
		SELECT * FROM (
		VALUES (1,'one'),
			(2,'two'),
			(3,'three')
		) AS mytable(id,name)");
		results.Dump("This is a table mapped to a class:");
	}
}

// Define other methods and classes here
class myobject {
	public int id { get; set; }
	public string name { get; set; }
}
 

Los resultados al ejecutar el programa se verían así:

Captura de pantalla de LINQPad