protected virtual DbExpressionBinding VisitExpressionBinding(DbExpressionBinding binding) { var result = binding; if (binding != null) { var newInput = VisitExpression(binding.Expression); if (!ReferenceEquals(binding.Expression, newInput)) { result = CqtBuilder.BindAs(newInput, binding.VariableName); RebindVariable(binding.Variable, result.Variable); } } return(result); }