Possible Duplicate:
Combining two expressions (Expression<Func<T, bool>>)
I have a method taking in a single Expression<Func<bool>>
parameter
void MethodOne(Expression<Func<bool>> expression)
I've got multiple instances of Expression<Func<bool>>
. How do I dynamically combine these expressions into a single Expression<Func<bool>>
using Expression.OrElse
(i.e. building up an expression tree)?
For example if I have two expressions such as
() => objectA.PropertyOneIsSet
and
() => objectB.PropertyTwoIsSet
I want the end result to be:
() => objectA.PropertyOneIsSet || objectB.PropertyTwoIsSet
so I can pass this to my method above.
You can create ExpressionVisitor to combine queries. Check this msdn blog for more info: Combining Predicates (Answer 3). He talking about EF, but you can use it in your case
You could use expressions.Any(x => x.CallMethod) in order to achieve this goal.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With