Asume, that we expressions like this:
someIQueryable.Where(x => x.SomeBoolProperty)
someIQueryable.Where(x => !x.SomeBoolProperty)
I need to convert (rewrite using expression visitor) expressions like above to expressions like this:
someIQueryable.Where(x => x.SomeBoolProperty == true)
someIQueryable.Where(x => x.SomeBoolProperty != true)
NOTE: rewriter must work in more general case too, if we have more complex expressions:
someIQueryable.Where((x => x.SomeBoolProperty && x.SomeIntProperty > 0) || !x.SomeOtherBoolProperty))
Something like:
with:
For more complex processing, an
ExpressionVisitor
may be necessary: