private static void PrepareAnyImplicitJoins(DotNode dotNode) { if (dotNode.GetLhs() is DotNode) { DotNode lhs = ( DotNode )dotNode.GetLhs(); FromElement lhsOrigin = lhs.FromElement; if (lhsOrigin != null && "" == lhsOrigin.Text) { String lhsOriginText = lhsOrigin.Queryable.TableName + " " + lhsOrigin.TableAlias; lhsOrigin.Text = lhsOriginText; } PrepareAnyImplicitJoins(lhs); } }
private bool ResolveAsNakedComponentPropertyRefRhs(DotNode parent) { FromElement fromElement = LocateSingleFromElement(); if (fromElement == null) { return(false); } IType propertyType; string propertyPath = parent.GetLhs().Text + "." + Text; try { // check to see if our "propPath" actually // represents a property on the persister propertyType = fromElement.GetPropertyType(Text, propertyPath); } catch (Exception) { // assume we do *not* refer to a property on the given persister return(false); } FromElement = fromElement; // this piece is needed for usage in select clause DataType = propertyType; _nakedPropertyRef = true; return(true); }
private static void PrepareAnyImplicitJoins(DotNode dotNode) { if ( dotNode.GetLhs() is DotNode ) { DotNode lhs = ( DotNode ) dotNode.GetLhs(); FromElement lhsOrigin = lhs.FromElement; if ( lhsOrigin != null && "" == lhsOrigin.Text ) { String lhsOriginText = lhsOrigin.Queryable.TableName + " " + lhsOrigin.TableAlias; lhsOrigin.Text = lhsOriginText; } PrepareAnyImplicitJoins( lhs ); } }
private bool ResolveAsNakedComponentPropertyRefRhs(DotNode parent) { FromElement fromElement = LocateSingleFromElement(); if (fromElement == null) { return false; } IType propertyType; string propertyPath = parent.GetLhs().Text + "." + Text; try { // check to see if our "propPath" actually // represents a property on the persister propertyType = fromElement.GetPropertyType(Text, propertyPath); } catch (Exception) { // assume we do *not* refer to a property on the given persister return false; } FromElement = fromElement; // this piece is needed for usage in select clause DataType = propertyType; _nakedPropertyRef = true; return true; }