@@ -1096,21 +1096,20 @@ private ProjectionExpression VisitSelectMany(Expression source, LambdaExpression
10961096 . Concat ( state . Parameters )
10971097 . Concat ( collectionSelector . Parameters )
10981098 . AddOne ( outerParameter ) . ToArray ( ) ;
1099- state . Parameters = ArrayUtils < ParameterExpression > . EmptyArray ;
1099+ state . Parameters = Array . Empty < ParameterExpression > ( ) ;
11001100 state . RequestCalculateExpressionsOnce = true ;
11011101 var visitedCollectionSelector = Visit ( collectionSelector . Body ) ;
11021102
11031103 if ( visitedCollectionSelector . IsGroupingExpression ( ) ) {
11041104 var selectManyInfo = ( ( GroupingExpression ) visitedCollectionSelector ) . SelectManyInfo ;
11051105 if ( selectManyInfo . GroupByProjection == null ) {
1106- LambdaExpression newResultSelector ;
1107- bool rewriteSucceeded = SelectManySelectorRewriter . TryRewrite (
1106+ var rewriteSucceeded = SelectManySelectorRewriter . TryRewrite (
11081107 resultSelector ,
11091108 resultSelector . Parameters [ 0 ] ,
11101109 selectManyInfo . GroupJoinOuterKeySelector . Parameters [ 0 ] ,
1111- out newResultSelector ) ;
1110+ out var newResultSelector ) ;
11121111
1113- if ( rewriteSucceeded )
1112+ if ( rewriteSucceeded ) {
11141113 return VisitJoin (
11151114 selectManyInfo . GroupJoinOuterProjection ,
11161115 selectManyInfo . GroupJoinInnerProjection ,
@@ -1119,9 +1118,15 @@ private ProjectionExpression VisitSelectMany(Expression source, LambdaExpression
11191118 newResultSelector ,
11201119 isOuter ,
11211120 expressionPart ) ;
1121+ }
1122+ }
1123+ else {
1124+ if ( resultSelector == null ) {
1125+ return selectManyInfo . GroupByProjection ;
1126+ }
1127+
1128+ throw new NotImplementedException ( ) ;
11221129 }
1123- else
1124- return selectManyInfo . GroupByProjection ;
11251130 }
11261131
11271132 var projection = VisitSequence ( visitedCollectionSelector , collectionSelector ) ;
0 commit comments