static void Main(string[] args) { var person = new Person(); person.Name = "John"; Expression <Func <Person, bool> > exp = x => x.Name == FixString(person.Name) && x.Age > 20; var modified = new FixVisitor().Visit(exp); Console.WriteLine(modified); }
protected override Expression VisitChildren(ExpressionVisitor visitor) { var fix = new FixVisitor(); var newJsonExpression = visitor.Visit(fix.Visit(Json)); var newPathExpression = visitor.Visit(fix.Visit(Path)); return(newJsonExpression != Json || newPathExpression != Path ? new ValueFromOpenJsonExpression(QuerySource, newJsonExpression, newPathExpression, Alias) : this); }