Einführung und Installation

1. Was ist Dapper

Dapper ist ein .NET‑Micro‑ORM, es gilt als König der Micro‑ORMs und erreicht eine Leistung nahe dem nativen ADO.NET.

ORM: Objekt‑Relationaler‑Mapper. Er übernimmt die automatische Abbildung zwischen Datenbanktabellen und C#‑Entitäten.

Kernmerkmale:

  1. SQL wird nicht gekapselt, der Entwickler schreibt die SQL‑Anweisungen selbst;
  2. Er erweitert IDbConnection per Erweiterungsmethoden (direkt nutzbar für alle Datenbank‑Verbindungsobjekte);
  3. Klein im Umfang und extrem leistungsstark.

Hinweis: Streng genommen handelt es sich um ein Micro‑ORM, im Gegensatz zu vollständigen ORM‑Frameworks wie EF Core. In der Community wird diskutiert, ob es sich um ein echtes ORM handelt.

Schutz vor SQL‑Injection: Parametrisierte Abfragen verhindern Injection‑Angriffe. Das Zusammenfügen von SQL‑Strings birgt weiterhin Risiken.

Drei Ausführungsschritte: Datenbankverbindung erstellen → SQL‑Anweisung schreiben → Dapper‑Erweiterungsmethode aufrufen, SQL und Parameter übergeben.

Eigenschaften

  • Hohe Leistung, schnelle Abfragen
  • Unterstützt Abbildung auf statische Entitäten und dynamische Objekte
  • Vollständige Kontrolle über SQL‑Anweisungen
  • Mehrere Ergebnismengen in einer Abfrage unterstützen
  • Native Unterstützung für gespeicherte Prozeduren
  • Basiert auf Schnittstelle IDbConnection, kompatibel mit allen gängigen Datenbanktreibern
  • Massen‑Einfügen (Erweiterungsfunktion; einfache native Variante, für große Datenmengen wird Dapper.Plus empfohlen)

Installation

Methode 1: NuGet‑Paket‑Manager‑Konsole (PMC)
Install-Package Dapper
Methode 2: .NET‑CLI (empfohlen für .NET Core/.NET5+)
dotnet add package Dapper
Methode 3: Visual‑Studio‑GUI

Solution‑Explorer → Rechtsklick auf Projekt → NuGet‑Pakete verwalten, nach Dapper suchen und installieren.

Wichtiger Hinweis: Dapper bringt keine Datenbanktreiber mit
Für SQL Server installieren Sie Microsoft.Data.SqlClient; für MySQL verwenden Sie MySqlConnector.

Beispiel

using Dapper;
using Microsoft.Data.SqlClient;

// 1. IDbConnection erstellen
string connStr = "Ihre Verbindungszeichenfolge";
using var conn = new SqlConnection(connStr);

// 2. SQL schreiben
string sql = "SELECT * FROM Article WHERE Id = @Id";

// 3. Abfrage ausführen und Entität automatisch abbilden
var article = conn.QueryFirstOrDefault<Article>(sql, new { Id = 1 });

public class Article
{
    public int Id { get; set; }
    public string Title { get; set; }
}Code-Sprache: JavaScript (javascript)

Vergleich

FrameworkTypSQL‑SteuerungEinsatzbereiche
DapperMicro ORMSQL manuell schreibenHohe Leistungsanforderungen, komplexe Abfragen, Modernisierung von Altprojekten
EF CoreFull ORMSQL automatisch generiert, natives SQL möglichSchnelle Entwicklung, einfache Geschäftslogik, keine manuelle SQL‑Schreibarbeit

Einführung und Installation

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert