Abfragen einer Datenbank mit einer IN-Klausel unter Verwendung von Dapper ORM und IEnumerable Values
Das Abfragen einer Datenbank mit einer IN-Klausel ist ein häufiger Vorgang und wird bei Verwendung von Dapper ORM, es gibt eine effiziente Möglichkeit, diese Abfragen zu schreiben, wenn die Werte für die IN-Klausel aus der Geschäftslogik stammen.
Stattdessen Anstatt die Werte manuell zu einer durch Kommas getrennten Zeichenfolge zu verketten, ermöglicht Dapper die direkte Übergabe eines IEnumerable-Werts als Parameter. Beispiel: Wenn die Abfrage lautet:
SELECT * FROM SomeTable WHERE id IN (commaSeparatedListOfIDs)
Wobei „commaSeparatedListOfIDs“ ein IEnumerable von Ganzzahlen ist, können Sie die Abfrage mit Dapper wie folgt erstellen:
string sql = "SELECT * FROM SomeTable WHERE id IN @ids"; var results = conn.Query(sql, new { ids = new[] { 1, 2, 3, 4, 5 }});
Dapper generiert automatisch die entsprechende SQL aus der IN-Klausel und binden Sie die Werte aus dem ids-Parameter. Beachten Sie, dass bei Verwendung von PostgreSQL ein etwas anderer Ansatz erforderlich ist. Weitere Informationen finden Sie in der bereitgestellten Antwort.
Das obige ist der detaillierte Inhalt vonWie kann ich die IN-Klausel von Dapper effizient mit IEnumerable-Werten verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!