Dapper.NET Tutorial
Erste Schritte mit Dapper.NET
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?
- github: https://github.com/StackExchange/dapper-dot-net
- NuGet: https://www.nuget.org/packages/Dapper
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)
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: