protected override Expression VisitMethodCall(MethodCallExpression node) { var subquery = new SubqueryExpression(node.Arguments[0] as MethodCallExpression ?? node); this.SqlCmd = subquery.SqlCmd; this.Param = subquery.Param; this.ReturnType = subquery.ReturnType; this.WhereExpression = subquery.WhereExpression; return(node); }
protected override Expression VisitMethodCall(MethodCallExpression node) { var nodeExpression = node; if (node.Arguments.Count() != 0) { var argumentExp = node.Arguments[0] as MethodCallExpression; if (argumentExp != null) { nodeExpression = argumentExp; } } var subquery = new SubqueryExpression(nodeExpression); this.SqlCmd = subquery.SqlCmd; this.Param = subquery.Param; this.ReturnType = subquery.ReturnType; this.WhereExpression = subquery.WhereExpression; return(node); }