c# - nhibernate where 子句中的条件 'or'

标签 c# asp.net-mvc nhibernate

我正在处理 nhibernate 查询,我需要选择表中的所有记录,其中 ID 与我拥有的数组中的任何 ID 匹配。

所以我有 int[] ids 并且我需要一个

.Where(x => x.id == ids[0]
 || x.id == ids[1]
 || x.id == ids[2]

等等...但是数组中可以有可变数量的 id。这样做的正确方法是什么?

我也不确定要搜索什么,否则我可能会在谷歌上找到一些东西

最佳答案

NHibernate 可以将 Contains 调用转换为 In query在 SQL 中。

.Where(x => ids.Contains(x.id));

关于c# - nhibernate where 子句中的条件 'or',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33634511/

相关文章:

c# - 使用 CType 的枚举解决重载问题

c# - 你如何为单元测试最小化一个类

c# - 使用 HQL 语句按 ID 列表删除多条记录

multithreading - Nhibernate中的多线程UnitOfWork

asp.net-mvc - AngularJS Model DateTime 属性与格式绑定(bind)

没有 log4net 的 NHibernate?

c# - 为什么没有参数的委托(delegate)可以编译?

c# - 使用多种形式

c# - AutoMapper 无法转换简单的 DTO

asp.net-mvc - 显示主键是一种危险