public FeatureQueryExpression(ProjectionExpression projectionExpression, BinaryExpression attributeFilter, SpatialBinaryExpression spatialFilter, OidCollectionExpression oidFilter, SortExpressionCollectionExpression sort) // TODO: Well, this is crazy. We need an init() function, and perhaps some more static creator methods. : base(projectionExpression, attributeFilter == null ? spatialFilter == null ? oidFilter : oidFilter == null ? (PredicateExpression)spatialFilter : new BinaryExpression(spatialFilter, BinaryOperator.And, oidFilter) : spatialFilter == null ? oidFilter == null ? attributeFilter : new BinaryExpression(attributeFilter, BinaryOperator.And, oidFilter) : oidFilter == null ? new BinaryExpression(attributeFilter, BinaryOperator.And, spatialFilter) : new BinaryExpression(attributeFilter, BinaryOperator.And, new BinaryExpression(oidFilter, BinaryOperator.And, spatialFilter)), sort) { }
public FeatureQueryExpression(AttributesPredicateExpression attributeFilter, SpatialBinaryExpression spatialFilter, OidCollectionExpression oidFilter, SortExpressionCollectionExpression sort) : this(new AllAttributesExpression(), attributeFilter, spatialFilter, oidFilter, sort) { }
public FeatureQueryExpression(AttributeBinaryExpression attributeFilter, SpatialBinaryExpression spatialFilter, OidCollectionExpression oidFilter) : this(new AllAttributesExpression(), attributeFilter, spatialFilter, oidFilter, null) { }