public override void Visit(QualifiedJoin qualifiedJoin) { var findEqualityComparisonVisitor = new FindEqualityComparisonVisitor(); qualifiedJoin.SearchCondition.Accept(findEqualityComparisonVisitor); foreach (var equalityComparison in findEqualityComparisonVisitor.Comparisons) { var firstColumnReferenceExpression = equalityComparison.FirstExpression as ColumnReferenceExpression; var secondColumnReferenceExpression = equalityComparison.SecondExpression as ColumnReferenceExpression; if (firstColumnReferenceExpression != null && secondColumnReferenceExpression != null) { var firstColumnResolved = resolveMultiPartIdentifier(firstColumnReferenceExpression.MultiPartIdentifier); var secondColumnResolved = resolveMultiPartIdentifier(secondColumnReferenceExpression.MultiPartIdentifier); EqualityJoins.Add(new EqualityJoin(firstColumnResolved, secondColumnResolved)); } } }
public override void Visit(QualifiedJoin qualifiedJoin) { var findEqualityComparisonVisitor = new FindEqualityComparisonVisitor(); qualifiedJoin.SearchCondition.Accept(findEqualityComparisonVisitor); foreach (var equalityComparison in findEqualityComparisonVisitor.Comparisons) { var firstColumnReferenceExpression = equalityComparison.FirstExpression as ColumnReferenceExpression; var secondColumnReferenceExpression = equalityComparison.SecondExpression as ColumnReferenceExpression; if (firstColumnReferenceExpression != null && secondColumnReferenceExpression != null) { var firstColumnResolved = resolveMultiPartIdentifier(firstColumnReferenceExpression.MultiPartIdentifier); var secondColumnResolved = resolveMultiPartIdentifier(secondColumnReferenceExpression.MultiPartIdentifier); EqualityJoins.Add(new EqualityJoin(firstColumnResolved, secondColumnResolved)); } } }