@@ -1650,7 +1650,8 @@ public void EnsureEntityFieldsAreJoined(EntityExpression entityExpression, ItemP
16501650 . ToArray ( ) ;
16511651 int offset = itemProjector . DataSource . Header . Length ;
16521652 var oldDataSource = itemProjector . DataSource ;
1653- var newDataSource = entityExpression . IsNullable
1653+
1654+ var newDataSource = entityExpression . IsNullable || oldDataSource . CheckIfUseLeftJoin ( )
16541655 ? itemProjector . DataSource . LeftJoin ( joinedRs , keyPairs )
16551656 : itemProjector . DataSource . Join ( joinedRs , keyPairs ) ;
16561657 itemProjector . DataSource = newDataSource ;
@@ -1675,15 +1676,15 @@ private void EnsureEntityReferenceIsJoined(EntityFieldExpression entityFieldExpr
16751676
16761677 var oldDataSource = originalItemProjector . DataSource ;
16771678 var offset = oldDataSource . Header . Length ;
1678- var shouldUseLeftJoin = false ;
1679+ // var shouldUseLeftJoin = false;
16791680
1680- var sourceToCheck = ( oldDataSource is FilterProvider filterProvider ) ? filterProvider . Source : oldDataSource ;
1681- if ( ( sourceToCheck is ApplyProvider applyProvider && applyProvider . ApplyType == JoinType . LeftOuter ) ||
1682- ( sourceToCheck is JoinProvider joinProvider && joinProvider . JoinType == JoinType . LeftOuter ) ) {
1683- shouldUseLeftJoin = true ;
1684- }
1681+ // var sourceToCheck = (oldDataSource is FilterProvider filterProvider) ? filterProvider.Source : oldDataSource;
1682+ // if ((sourceToCheck is ApplyProvider applyProvider && applyProvider.ApplyType == JoinType.LeftOuter) ||
1683+ // (sourceToCheck is JoinProvider joinProvider && joinProvider.JoinType == JoinType.LeftOuter)) {
1684+ // shouldUseLeftJoin = true;
1685+ // }
16851686
1686- var newDataSource = entityFieldExpression . IsNullable || shouldUseLeftJoin
1687+ var newDataSource = entityFieldExpression . IsNullable || oldDataSource . CheckIfUseLeftJoin ( )
16871688 ? oldDataSource . LeftJoin ( joinedRs , keyPairs )
16881689 : oldDataSource . Join ( joinedRs , keyPairs ) ;
16891690 originalItemProjector . DataSource = newDataSource ;
0 commit comments