一尘不染

使用ODBC的Dapper WHERE IN语句

sql

我在ODBC提供程序上使用Dapper,众所周知,该提供程序不支持命名参数。对于大多数查询,我使用伪命名参数:?name?。但是,当我尝试

 string query = $"select * from \"{TableName}\" where ID in ?Ids?";
 return connection.Query<CdfGroupByCdfUserRecord>(query, new {Ids = ids}).ToArray();

我看到Dapper产生查询

select * from "MY_TABLE" where ID in (?Ids1,?Ids2,?Ids3,?Ids4,?Ids5)?

我应该怎么做才能使其正常工作?


阅读 291

收藏
2021-03-08

共1个答案

一尘不染

这似乎是dapper中的错误。我将尝试将其修复为1.50.2。我已经在这里记录了它(用于跟踪)

2021-03-08