27

我有这个类:

public class Order
{
   int OrderId {get; set;}
   string CustomerName {get; set;}
}

我也声明了以下变量

Func<Order, bool> predicate1 = t=>t.OrderId == 5 ;
Func<Order, bool> predicate2 = t=>t.CustomerName == "Ali";

有什么方法可以连接这些变量(使用 AND/OR)并将结果放入第三个变量中?例如:

Func<Order, bool> predicate3 = predicate1 and predicate2;

或者

Func<Order, bool> predicate3 = predicate1 or predicate2;
4

1 回答 1

58

和:

Func<Order, bool> predicate3 = 
    order => predicate1(order) && predicate2(order);

或者:

Func<Order, bool> predicate3 = 
    order => predicate1(order) || predicate2(order);
于 2013-06-13T13:27:47.220 回答