gpt4 book ai didi

mysql - 如何使用 BLToolkit 通过 ID 列表获取对象列表?

转载 作者:行者123 更新时间:2023-11-30 23:32:01 24 4
gpt4 key购买 nike

我正在尝试编写将被翻译成以下查询的代码:

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)' cannot be converted to SQL.

有什么解决办法吗?

如果不是,如何通过 ID 列表查询对象列表?

非常感谢,欢迎任何反馈。

最佳答案

也可以使用BLToolkit中的Contains,查看文件..\UnitTests\Linq\Functions.cs在 BLToolkit 源代码中使用 contains 进行一些单元测试

我认为(未经测试)您当前代码的问题在于 IList 的使用只需尝试使用列表

public static IList<Player> GetPlayersByIds(List<int> ids, DbManager db)
{
return db.GetTable<Player>().Where(pl => ids.Contains(pl.Id)).ToList();
}

关于mysql - 如何使用 BLToolkit 通过 ID 列表获取对象列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10099392/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com