Dapper AddDynamicParams dla instrukcji IN z „dynamiczną” nazwą parametru

Mam prosty ciąg SQL, taki jak ten:

"SELECT * FROM Office WHERE OfficeId IN @Ids"

Chodzi o to, że nazwa @Ids jest wprowadzana w edytorze, więc może być czymkolwiek, a moim problemem jest to, że jeśli chcę przekazać, powiedzmy tablicę liczb całkowitych, to działa tylko z Dapperem, gdy używam:

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

Ale to wymaga ode mnie, ŻE WIEM, że nazwa parametru toIds i tak nie jest w moim scenariuszu.

Mogę ustawić „dynamiczny parametr” w Dapperie z „dynamiczną” nazwą w następujący sposób:

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

Ale wtedy Dapper nie budujeIN (....) SQL z oddzielnymi parametrami dla każdej wartości.

Czy istnieje sposób skonstruowania dynamicznego obiektu przekazywanego doAddDynamicParams ale ustawienie nazwy członka i wartości bez wcześniejszego poznania nazwy?

Mógłbym zmodyfikować źródło Dappera, aby działało w moim scenariuszu, ale jeśli ktoś zna prostsze i bardziej eleganckie rozwiązanie tego problemu, byłbym wdzięczny!

questionAnswers(1)

yourAnswerToTheQuestion