示例#1
0
        public override DataTable GetFeatureTable(string fieldNames, string where)
        {
            CheckIsFeatureLayer();

            FieldSelection fieldSelection = new FieldSelection(this, fieldNames);
            QueryFilter    queryFilter    = new QueryFilter(fieldSelection.NamesToString(), where);
            RecordSet      recordSet      = _service.MapServer.QueryFeatureData(DataFrame.Name, _mapLayerInfo.LayerID, queryFilter);

            return(RecordSetToTable(recordSet, fieldSelection));
        }
示例#2
0
        public override DataTable GetFeatureTable(string fieldNames, string where, IGeometry shape)
        {
            CheckIsFeatureLayer();

            FieldSelection fieldSelection = new FieldSelection(this, fieldNames);
            SpatialFilter  spatialFilter  = new SpatialFilter(shape, fieldSelection.NamesToString(), where);

            spatialFilter.SpatialRel = esriSpatialRelEnum.esriSpatialRelIntersects;
            RecordSet recordSet = _service.MapServer.QueryFeatureData(DataFrame.Name, _mapLayerInfo.LayerID, spatialFilter);

            return(RecordSetToTable(recordSet, fieldSelection));
        }
示例#3
0
        public override DataTable GetFeatureTable(string fieldNames, string where, IGeometry shape)
        {
            FieldSelection fieldSelection = new FieldSelection(this, fieldNames);
            SpatialQuery   query          = new SpatialQuery(where, shape);

            query.Subfields = fieldSelection.NamesToString(" ");

            GetFeatures getFeatures = new GetFeatures(ID, query);

            getFeatures.DataFrame = DataFrame.Name;
            getFeatures.Geometry  = fieldSelection.Fields.Any(lyr => lyr.Type == CommonFieldType.Geometry);
            return(GetFeatureTable(getFeatures, fieldSelection));
        }