Skip to content

Commit e867f17

Browse files
author
Gunnar Liljas
committed
NH3567 - Refactored
1 parent 9507776 commit e867f17

File tree

1 file changed

+8
-21
lines changed

1 file changed

+8
-21
lines changed

src/NHibernate/Loader/Criteria/CriteriaQueryTranslator.cs

Lines changed: 8 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -852,8 +852,12 @@ public string[] GetColumnAliasesUsingProjection(ICriteria subcriteria, string pr
852852
private void CreateSubQuerySpaces()
853853
{
854854

855-
var subQueries = new List<CriteriaImpl>();
856-
GetSubQueries(rootCriteria, subQueries);
855+
var subQueries =
856+
rootCriteria.IterateExpressionEntries()
857+
.Select(x => x.Criterion)
858+
.OfType<SubqueryExpression>()
859+
.Select(x => x.Criteria)
860+
.OfType<CriteriaImpl>();
857861

858862
foreach (var criteriaImpl in subQueries)
859863
{
@@ -862,23 +866,6 @@ private void CreateSubQuerySpaces()
862866
subQuerySpaces.UnionWith(translator.GetQuerySpaces());
863867
}
864868

865-
}
866-
867-
private void GetSubQueries(CriteriaImpl criteriaImpl, List<CriteriaImpl> subQueries)
868-
{
869-
var subQueryExpressions =
870-
criteriaImpl.IterateExpressionEntries().Select(x => x.Criterion).OfType<SubqueryExpression>().ToList();
871-
872-
foreach (var subqueryExpression in subQueryExpressions)
873-
{
874-
var impl = subqueryExpression.Criteria as CriteriaImpl;
875-
if (impl != null)
876-
{
877-
subQueries.Add(impl);
878-
GetSubQueries(impl, subQueries);
879-
}
880-
}
881-
882-
}
869+
}
883870
}
884-
}
871+
}

0 commit comments

Comments
 (0)