예제 #1
0
        protected virtual void ResolveSqlTable(SqlTable sqlTable)
        {
            ArgumentUtility.CheckNotNull("sqlTable", sqlTable);

            sqlTable.TableInfo = _stage.ResolveTableInfo(sqlTable.TableInfo, _context);
            ResolveJoins(sqlTable);
        }
예제 #2
0
        public IJoinInfo VisitResolvedJoinInfo(ResolvedJoinInfo joinInfo)
        {
            ArgumentUtility.CheckNotNull("joinInfo", joinInfo);
            var newForeignTableInfo = _stage.ResolveTableInfo(joinInfo.ForeignTableInfo, _context);
            var newCondition        = _stage.ResolveJoinCondition(joinInfo.JoinCondition, _context);

            if (newForeignTableInfo != joinInfo.ForeignTableInfo || newCondition != joinInfo.JoinCondition)
            {
                return(new ResolvedJoinInfo(newForeignTableInfo, newCondition));
            }
            return(joinInfo);
        }