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, SortExpressionCollectionExpression sort)
     : base(new AllAttributesExpression(), new BinaryExpression(attributeFilter,
                                                                BinaryOperator.And,
                                                                spatialFilter), sort)
 {
 }
 public ProviderQueryExpression(
     IEnumerable <ProviderPropertyExpression> providerProperties,
     ProjectionExpression projection,
     PredicateExpression predicate,
     SortExpressionCollectionExpression sort)
     : this(new ProviderPropertiesExpression(providerProperties), projection, predicate, sort)
 {
 }
 public FeatureQueryExpression(AttributesProjectionExpression attributes,
                               AttributeBinaryExpression attributeFilter,
                               SpatialBinaryExpression spatialFilter, SortExpressionCollectionExpression sort)
     : base(attributes, new BinaryExpression(attributeFilter,
                                             BinaryOperator.And,
                                             spatialFilter), sort)
 {
 }
 public ProviderQueryExpression(
     ProviderPropertiesExpression providerPropertiesExpression,
     ProjectionExpression projection,
     PredicateExpression predicate,
     SortExpressionCollectionExpression sort)
     : base(projection, predicate, sort)
 {
     _providerPropertiesExpression = providerPropertiesExpression;
 }
 public FeatureQueryExpression(IGeometry geometry,
                               SpatialOperation op,
                               IEnumerable <IFeatureDataRecord> features, SortExpressionCollectionExpression sort)
     : base(new AllAttributesExpression(),
            new SpatialBinaryExpression(new GeometryExpression(geometry),
                                        op,
                                        new FeaturesCollectionExpression(features)), sort)
 {
 }
 public FeatureQueryExpression(IExtents extents,
                               SpatialOperation op,
                               IEnumerable <IFeatureDataRecord> features, SortExpressionCollectionExpression sort)
     : base(new AllAttributesExpression(),
            new SpatialBinaryExpression(new ExtentsExpression(extents),
                                        op,
                                        new FeaturesCollectionExpression(features)), sort)
 {
 }
Пример #8
0
 public QueryExpression(ProjectionExpression projection, PredicateExpression predicate, SortExpressionCollectionExpression sort)
 {
     _projection = projection;
     _predicate  = predicate;
     _sort       = sort;
 }
 public FeatureQueryExpression(ProjectionExpression projection,
                               PredicateExpression predicate, SortExpressionCollectionExpression sort)
     : base(projection, predicate, sort)
 {
 }
 public FeatureQueryExpression(AttributesPredicateExpression attributeFilter,
                               SpatialBinaryExpression spatialFilter,
                               OidCollectionExpression oidFilter, SortExpressionCollectionExpression sort)
     : this(new AllAttributesExpression(), attributeFilter, spatialFilter, oidFilter, sort)
 {
 }
 public FeatureQueryExpression(SpatialBinaryExpression spatialFilter, SortExpressionCollectionExpression sort)
     : base(new AllAttributesExpression(), spatialFilter, sort)
 {
 }
 public FeatureQueryExpression(AttributesPredicateExpression attributeFilter, SortExpressionCollectionExpression sort)
     : base(new AllAttributesExpression(), attributeFilter, sort)
 {
 }
 public FeatureQueryExpression(IGeometry geometry, SpatialOperation op, IFeatureProvider provider, SortExpressionCollectionExpression sort)
     : base(new AllAttributesExpression(), new SpatialBinaryExpression(new GeometryExpression(geometry),
                                                                       op,
                                                                       new ProviderExpression(provider)), sort)
 {
 }
 public FeatureQueryExpression(IExtents extents, SpatialOperation op, SortExpressionCollectionExpression sort)
     : base(new AllAttributesExpression(), new SpatialBinaryExpression(new ExtentsExpression(extents),
                                                                       op,
                                                                       new ThisExpression()), sort)
 {
 }