Suche…


Bemerkungen

Was ist Dapper?

Dapper ist ein Mikro-ORM für .Net, das Ihre IDbConnection und das Einrichten, Ausführen und Ablesen von Abfragen vereinfacht.

Wie bekomme ich es?

Häufige Aufgaben

Versionen

Ausführung Anmerkungen Veröffentlichungsdatum
1,50,0 Core-Clr / Asp.net 5.0 Build gegen 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

Installieren Sie Dapper von Nuget

Entweder Suche in der Visual Studio-GUI:

Tools> NuGet Package Manager> Pakete für Lösung verwalten ... (Visual Studio 2015)

Screenshot der Visual Studio-Paket-Manager-Oberfläche mit ausgewähltem Dapper

Oder führen Sie diesen Befehl in einer Nuget Power Shell-Instanz aus, um die neueste stabile Version zu installieren

Install-Package Dapper

Oder für eine bestimmte Version

Install-Package Dapper -Version 1.42.0

Verwenden von Dapper in 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);
        }
    }
}

Durch das Umschließen der Verbindung in einen Using Block wird die Verbindung geschlossen

Verwenden von Dapper in LINQPad

LINQPad eignet sich hervorragend zum Testen von Datenbankabfragen und beinhaltet die Integration von NuGet . Um Dapper in LINQPad zu verwenden, drücken Sie F4 , um die Abfrageeigenschaften zu öffnen, und wählen Sie dann NuGet hinzufügen . Suchen Sie nach dapper dot net und wählen Sie Zu Abfrage hinzufügen . Sie möchten auch auf Namespaces hinzufügen klicken und Dapper markieren, um die Erweiterungsmethoden in Ihre LINQPad-Abfrage aufzunehmen.

Wenn Dapper aktiviert ist, können Sie die Dropdown-Liste Sprache in C # -Programm ändern, Abfrageergebnisse C # -Klassen zuordnen und die .Dump () -Methode verwenden, um die Ergebnisse zu überprüfen:

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; }
}

Die Ergebnisse beim Ausführen des Programms würden folgendermaßen aussehen:

LINQPad-Screenshot



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow