我正在尝试编写将转换为以下查询的代码:
SELECT * FROM players WHERE Id IN (xxx)
对于 MS-SQL 和 linq2sql,我使用了“包含”结构,效果很好。
现在(对于 MySQl 和 BLToolkit)我这样做了:
public static IList<Player> GetPlayersByIds(IList<int> ids, DbManager db)
{
return db.GetTable<Player>().Where(pl => ids.Contains(pl.Id)).ToList();
}
但此代码的执行返回以下错误:
value(vfm_elita.elita_table.player.Player+<>c__DisplayClass13).ids.Contains(pl.Id)' 无法转换为 SQL。
有什么解决办法吗?
如果不是,如何通过 ID 列表查询对象列表?
非常感谢,欢迎任何反馈。