internal override bool BuildWhere(ExtentStatement statement, string alias) { if (this.Include) { var atLeastOneChildIncluded = false; statement.Append("("); foreach (var filter in this.Filters) { if (atLeastOneChildIncluded) { statement.Append(" OR "); } if (filter.BuildWhere(statement, alias)) { atLeastOneChildIncluded = true; } } statement.Append(")"); return atLeastOneChildIncluded; } return false; }
internal override bool BuildWhere(ExtentStatement statement, string alias) { if (this.Include) { var root = this.Extent.Filter == null || this.Extent.Filter.Equals(this); if (root) { var wherePresent = !this.Extent.ObjectType.ExistExclusiveClass; statement.Append(wherePresent ? " AND " : " WHERE "); } else { statement.Append("("); } var atLeastOneChildIncluded = false; foreach (var filter in this.Filters) { if (atLeastOneChildIncluded) { statement.Append(" AND "); } if (filter.BuildWhere(statement, alias)) { atLeastOneChildIncluded = true; } } if (!root) { statement.Append(")"); } return atLeastOneChildIncluded; } return false; }
public override bool BuildWhere(ExtentStatement statement, string alias) { if (this.Include) { var root = this.Extent.Filter == null || this.Extent.Filter.Equals(this); if (root) { var wherePresent = !this.Extent.ObjectType.ExistExclusiveClass; statement.Append(wherePresent ? " AND " : " WHERE "); } else { statement.Append("("); } var atLeastOneChildIncluded = false; foreach (var filter in this.Filters) { if (atLeastOneChildIncluded) { statement.Append(" AND "); } if (filter.BuildWhere(statement, alias)) { atLeastOneChildIncluded = true; } } if (!root) { statement.Append(")"); } return(atLeastOneChildIncluded); } return(false); }
public override void Setup(ExtentStatement statement) { }
internal abstract void Setup(ExtentStatement statement);
internal abstract bool BuildWhere(ExtentStatement statement, string alias);
public abstract void Setup(ExtentStatement statement);
public abstract bool BuildWhere(ExtentStatement statement, string alias);