Dapper AddDynamicParams для оператора IN с «динамическим» именем параметра
У меня есть простая строка SQL, как это:
"SELECT * FROM Office WHERE OfficeId IN @Ids"
Дело в том, что имя @Ids вводится в редакторе, поэтому оно может быть любым, и моя проблема в том, что если я хочу передать, скажем, массив целых чисел, он работает только с Dapper, если я использую:
var values = new DynamicParameters();
values.AddDynamicParams(new { Ids = new[] { 100, 101 } });
Но это требует от меня ЗНАНИЯ, что имя параметраIds
и это не так в моем сценарии.
Я могу установить «динамический параметр» в Dapper с «динамическим» имя как это:
var values = new DynamicParameters();
values.Add("Ids", new[] { 100, 101 });
Но тогда Даппер не создаетIN (....)
SQL с отдельными параметрами для каждого значения.
Есть ли способ построить динамический объект, переданный вAddDynamicParams
но установить имя члена и значение, не зная заранее имя?
Я мог бы изменить исходный код Dapper для работы в моем сценарии, но если бы кто-нибудь знал о более простом и элегантном решении этого вопроса, я был бы очень рад!