Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如果Linq to NHiberbnate查询的列表中有空值,如何将其放入WHERE中?_C#_Sql_Nhibernate_Filter - Fatal编程技术网

C# 如果Linq to NHiberbnate查询的列表中有空值,如何将其放入WHERE中?

C# 如果Linq to NHiberbnate查询的列表中有空值,如何将其放入WHERE中?,c#,sql,nhibernate,filter,C#,Sql,Nhibernate,Filter,我正在使用nHibernate并试图进行查询 例如: 我有列表-这将是要筛选的实体 我有列表-这将使用某个Entity.SomeId字段的值进行筛选 此列表将包含值:0,1,2,3,null 我想进行如下查询: List<int?> filters;//1,2,3,null List<Entity> entities; // some entities Entities.Where(entity => filters.Contains(Enentity.SomeId

我正在使用nHibernate并试图进行查询

例如:

我有
列表
-这将是要筛选的实体

我有
列表
-这将使用某个Entity.SomeId字段的值进行筛选

此列表将包含值:0,1,2,3,null

我想进行如下查询:

List<int?> filters;//1,2,3,null
List<Entity> entities; // some entities
Entities.Where(entity => filters.Contains(Enentity.SomeId)).ToList();
结果:返回了我需要的所有筛选记录,除了
entity.SomeId==null


怎么了?这类东西有什么解决办法吗?

我会使用复合条件并使用
int
列表,而不是
int?

List<int> filters;//1,2,3
List<Entity> entities; // some entities
Entities.Where(entity => entity.SomeId == null
                           || filters.Contains(Enentity.SomeId))
        .ToList();
列表过滤器//1,2,3
列出实体;//一些实体
其中(entity=>entity.SomeId==null
||filters.Contains(Enentity.SomeId))
.ToList();

我将使用复合条件,并使用
int
列表,而不是
int?

List<int> filters;//1,2,3
List<Entity> entities; // some entities
Entities.Where(entity => entity.SomeId == null
                           || filters.Contains(Enentity.SomeId))
        .ToList();
列表过滤器//1,2,3
列出实体;//一些实体
其中(entity=>entity.SomeId==null
||filters.Contains(Enentity.SomeId))
.ToList();

我建议在下一篇文章之前查看编辑帮助:实际上比你想象的要容易得多。我建议在下一篇文章之前查看编辑帮助:实际上比你想象的要容易得多。