/// <summary> /// Render the SQL Fragment. /// </summary> /// <param name="criteria"></param> /// <param name="position"></param> /// <param name="criteriaQuery"></param> /// <param name="enabledFilters"></param> /// <returns></returns> public override SqlString ToSqlString(ICriteria criteria, int position, ICriteriaQuery criteriaQuery, IDictionary <string, IFilter> enabledFilters) { ISpatialDialect spatialDialect = (ISpatialDialect)criteriaQuery.Factory.Dialect; string column1 = criteriaQuery.GetColumn(criteria, this.propertyName); SqlString sqlString; if (this.IsBinaryOperation()) { string column2 = criteriaQuery.GetColumn(criteria, this.anotherPropertyName); sqlString = spatialDialect.GetSpatialAnalysisString(column1, this.analysis, column2); } else { sqlString = spatialDialect.GetSpatialAnalysisString(column1, this.analysis, this.arguments); } return(new SqlStringBuilder() .Add(sqlString) .Add(" as y") .Add(position.ToString()) .Add("_") .ToSqlString()); }
public SqlString GetSpatialAnalysisString(object geometry, SpatialAnalysis analysis, object extraArgument) { return(worker.GetSpatialAnalysisString(geometry, analysis, extraArgument)); }