Dapper AddDynamicParams für IN-Anweisung mit "dynamischem" Parameternamen

Ich habe einfache SQL-Zeichenfolge wie folgt:

"SELECT * FROM Office WHERE OfficeId IN @Ids"

Die Sache ist, dass der Name @Ids in einem Editor eingegeben wird, so dass es alles Mögliche sein kann, und mein Problem ist, dass wenn ich ein Array von Ganzzahlen übergeben möchte, es nur mit Dapper funktioniert, wenn ich Folgendes verwende:

var values = new DynamicParameters();
values.AddDynamicParams(new { Ids = new[] { 100, 101 } });

Dafür muss ich jedoch WISSEN, dass der Parametername lautetIds und das ist in meinem szenario nicht der fall.

Ich kann einen "dynamischen Parameter" in Dapper mit einem "dynamischen" Namen wie folgt festlegen:

var values = new DynamicParameters();
values.Add("Ids", new[] { 100, 101 });

Aber dann baut Dapper das nichtIN (....) SQL mit separaten Parametern für jeden Wert.

Gibt es eine Möglichkeit, das dynamische Objekt zu erstellen, an das übergeben wird?AddDynamicParams aber den Mitgliedsnamen und den Wert einstellen, ohne den Namen vorher zu kennen?

Ich könnte die Dapper-Quelle so modifizieren, dass sie für mein Szenario funktioniert, aber wenn jemand eine einfachere und elegantere Lösung dafür kennt, wäre ich sehr dankbar!

Antworten auf die Frage(1)

Ihre Antwort auf die Frage