gpt4 book ai didi

c# - LINQ Where 语句与 OR 连接

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

通常可以在 Queryable 中连接多个“Where”语句,并通过在“Where”语句的表达式之间使用 AND 逻辑来过滤结果。

如何使用 OR 逻辑连接“Where”语句?像这样的东西:

query.OrWhere(t => true).OrWhere(t => false)

我正在尝试通过循环有条件地创建查询。

for (var i = 0; i < 15; i++)
{
switch(i)
{
case 0:
{
if (something happens)
{
query = query.OrWhere(t => t.columnDependingOnIndex is something);
}
break;
}
//and so on ...
}
}

最佳答案

只需在一个 Where 语句中使用 or(||)

query.Where(somePredicate || someOtherPredicate)

另一种方法是使用 .Union -

var q1 = query.Where(somePredicate)
var q2 = query.Where(someOtherPredicate)

var res = q1.Union(q2)

关于c# - LINQ Where 语句与 OR 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27336040/

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