ServiceFeatureTable Class |
Namespace: Esri.ArcGISRuntime.Data
The ServiceFeatureTable type exposes the following members.
Name | Description | |
---|---|---|
![]() | ServiceFeatureTable |
Initializes a new instance of the ServiceFeatureTable class.
|
![]() ![]() | ServiceFeatureTable(Uri) |
Initializes a new instance of the ServiceFeatureTable class.
|
![]() | ServiceFeatureTable(Item, Int64) |
Initializes a new instance of the ServiceFeatureTable class from an ArcGIS Item.
|
![]() | ServiceFeatureTable(ServiceFeatureTable, RelationshipInfo) |
Initializes a new instance of the ServiceFeatureTable class.
|
Name | Description | |
---|---|---|
![]() | BufferFactor |
Gets or sets the factor used to calculate a buffered extent around the current visible area when requesting new features from the service.
|
![]() | Credential | Gets or sets the security credential used to access the remote table |
![]() | DefaultSubtypeCode |
Gets the table's default subtype code.
(Inherited from ArcGISFeatureTable.) |
![]() | DefinitionExpression |
Gets or sets the expression which is a SQL statement WHERE clause to filter out the features to be queried.
|
![]() | DisplayName |
Gets or sets the table's display name.
(Inherited from FeatureTable.) |
![]() | EditableAttributeFields |
Gets the editable fields of this feature table.
(Inherited from ArcGISFeatureTable.) |
![]() ![]() | Extent |
Gets the geographic extent of features within the table.
(Inherited from FeatureTable.) |
![]() | FeatureLayer | Obsolete.
Gets the FeatureLayer this table is associated with, or created from, if any.
(Inherited from FeatureTable.) |
![]() ![]() | FeatureRequestMode |
Gets or sets the mode defining when features are requested from the service.
|
![]() | FeatureSubtypes |
Gets a list of FeatureSubtype of this feature table.
(Inherited from ArcGISFeatureTable.) |
![]() | FeatureTemplates |
Gets a list of FeatureTemplate of this feature table.
(Inherited from ArcGISFeatureTable.) |
![]() | FeatureTypes |
Gets a list of FeatureType of this feature table.
(Inherited from ArcGISFeatureTable.) |
![]() ![]() | Fields |
Gets the fields of the feature table.
(Inherited from FeatureTable.) |
![]() | GeodatabaseVersion |
Gets or sets the geodatabase version.
|
![]() ![]() | GeometryType |
Gets the GeometryType of features in this table.
(Inherited from FeatureTable.) |
![]() | GlobalIdField |
Gets the name of the global ID field.
(Inherited from ArcGISFeatureTable.) |
![]() | HasAttachments |
Gets a value indicating whether table supports attachments.
(Inherited from ArcGISFeatureTable.) |
![]() | HasGeometry |
Gets a value indicating whether this table has geometry data.
(Inherited from FeatureTable.) |
![]() | HasM | Gets a value indicating whether the shapefile geometries have M values. (Inherited from FeatureTable.) |
![]() | HasZ | Gets a value indicating whether the shapefile geometries have Z values. (Inherited from FeatureTable.) |
![]() | IsEditable |
Gets a value indicating whether this table is editable.
(Inherited from FeatureTable.) |
![]() | IsPopupEnabled |
Gets or sets a value indicating whether the PopupDefinition defined is enabled.
(Inherited from FeatureTable.) |
![]() | Item | Gets the ArcGIS Item |
![]() | Layer | Gets the layer this table is associated with, or created from, if any. (Inherited from FeatureTable.) |
![]() ![]() | LayerInfo |
Gets the ArcGISFeatureLayerInfo of this feature table.
(Inherited from ArcGISFeatureTable.) |
![]() | LoadError |
Gets the exception associated with a failed load. This property remains null if load is successful.
(Inherited from FeatureTable.) |
![]() ![]() | LoadStatus |
Gets the current load status.
(Inherited from FeatureTable.) |
![]() | NumberOfFeatures |
Gets the number of features in this table.
(Inherited from FeatureTable.) |
![]() | ObjectIdField |
Gets the name of the object ID field.
(Inherited from ArcGISFeatureTable.) |
![]() | PopupDefinition |
Gets or sets the pop-up definition for the table.
(Inherited from FeatureTable.) |
![]() | ServiceGeodatabase |
Gets the ServiceGeodatabase this service feature table is part of.
|
![]() ![]() | ServiceLayerId |
Returns the layer ID in the feature service that this table was created from.
(Inherited from ArcGISFeatureTable.) |
![]() | Source |
Gets or sets the ArcGIS REST service endpoint.
|
![]() | SpatialReference |
Gets the SpatialReference of this table.
(Inherited from FeatureTable.) |
![]() | SubtypeField |
Gets the table's subtype field.
(Inherited from ArcGISFeatureTable.) |
![]() ![]() | TableName |
Gets the name of the table.
(Inherited from FeatureTable.) |
![]() | TypeIdField |
Gets the name of the type ID field.
(Inherited from ArcGISFeatureTable.) |
![]() | UnknownJson |
Gets unknown data from the source JSON.
(Inherited from ArcGISFeatureTable.) |
![]() | UnsupportedJson |
Gets unsupported data from the source JSON.
(Inherited from ArcGISFeatureTable.) |
![]() | UseAdvancedSymbology |
Gets or sets a value indicating whether advanced symbology is used.
(Inherited from ArcGISFeatureTable.) |
Name | Description | |
---|---|---|
![]() ![]() | AddFeatureAsync |
Asynchronously adds new Feature to the table.
(Inherited from FeatureTable.) |
![]() | AddFeaturesAsync |
Asynchronously adds the set of Features to the table.
(Inherited from FeatureTable.) |
![]() ![]() | ApplyEditsAsync |
Asynchronously uploads any changes to the local table to the feature service.
|
![]() | ApplyEditsAsync(CancellationToken) |
Asynchronously uploads any changes to the local table to the feature service.
|
![]() | CanAdd |
Determines if a feature can be added to the table.
(Inherited from FeatureTable.) |
![]() | CancelLoad |
Cancel the previous load operation,
(Inherited from FeatureTable.) |
![]() | CanDelete |
Determines if the specified Feature can be deleted from the table.
(Inherited from FeatureTable.) |
![]() | CanEditGeometry |
Determines if the table allows for the geometry field to be modified.
(Inherited from FeatureTable.) |
![]() | CanUpdate |
Determines if the specified Feature can be updated on the table.
(Inherited from FeatureTable.) |
![]() | ClearCache |
Clears cached data.
|
![]() ![]() | CreateFeature |
Creates a new feature.
(Inherited from FeatureTable.) |
![]() | CreateFeature(FeatureSubtype) |
Creates and returns a new ArcGISFeature based on the specified FeatureSubtype.
(Inherited from ArcGISFeatureTable.) |
![]() | CreateFeature(FeatureTemplate) |
Creates and returns a new ArcGISFeature based on the specified FeatureTemplate.
(Inherited from ArcGISFeatureTable.) |
![]() | CreateFeature(FeatureType) |
Creates and returns a new ArcGISFeature based on the specified FeatureType.
(Inherited from ArcGISFeatureTable.) |
![]() | CreateFeature(IEnumerableKeyValuePairString, Object, Geometry) |
Creates a new feature with specified attributes and geometry.
(Inherited from FeatureTable.) |
![]() | CreateFeature(FeatureSubtype, Geometry) | (Inherited from ArcGISFeatureTable.) |
![]() | CreateFeature(FeatureTemplate, Geometry) | (Inherited from ArcGISFeatureTable.) |
![]() | CreateFeature(FeatureType, Geometry) | (Inherited from ArcGISFeatureTable.) |
![]() ![]() | DeleteFeatureAsync |
Asynchronously deletes new Feature from the table.
(Inherited from FeatureTable.) |
![]() | DeleteFeaturesAsync |
Asynchronously deletes the set of Features from the table.
(Inherited from FeatureTable.) |
![]() | GetAddedFeaturesAsync |
Retrieves the features added since the last sync.
(Inherited from ArcGISFeatureTable.) |
![]() | GetAddedFeaturesCountAsync |
Retrieves the number of features added since the last sync.
(Inherited from ArcGISFeatureTable.) |
![]() | GetDeletedFeaturesAsync |
Retrieves the features deleted since the last sync.
(Inherited from ArcGISFeatureTable.) |
![]() | GetDeletedFeaturesCountAsync |
Retrieves the number of features deleted since the last sync.
(Inherited from ArcGISFeatureTable.) |
![]() | GetFeatureTemplate |
Retrieves the FeatureTemplate associated with the specified feature template name.
(Inherited from ArcGISFeatureTable.) |
![]() | GetFeatureType |
Retrieves the FeatureType associated with the specified feature type name.
(Inherited from ArcGISFeatureTable.) |
![]() | GetField |
Gets the associated Field with specified field name.
(Inherited from FeatureTable.) |
![]() | GetRelatedTables | Returns a list of all related tables that have been added to the map. (Inherited from ArcGISFeatureTable.) |
![]() | GetRelatedTables(RelationshipInfo) | Returns list of tables related by the given relationship info. (Inherited from ArcGISFeatureTable.) |
![]() | GetUpdatedFeaturesAsync |
Retrieves the features updated since the last sync.
This set of features exists on server but were updated locally and have not yet been submitted to server.
(Inherited from ArcGISFeatureTable.) |
![]() | GetUpdatedFeaturesCountAsync |
Retrieves the number of features updated since the last sync.
(Inherited from ArcGISFeatureTable.) |
![]() | HasLocalEdits |
Checks whether the feature table has local edits.
(Inherited from ArcGISFeatureTable.) |
![]() ![]() | LoadAsync |
Asynchronously initiates loading of this table.
(Inherited from FeatureTable.) |
![]() | LoadOrRefreshFeaturesAsync |
Loads all attributes and geometries for unloaded features, and re-fetches attributes and
geometries for previously loaded features. All features loaded or refreshed by this
method will have m-values if defined by the service. Note that an m-value might be NaN.
|
![]() ![]() | PopulateFromServiceAsync(QueryParameters, Boolean, IEnumerableString) |
Queries the feature service and places the resulting features in the local table, which
is cached for the duration of the session. The ServiceFeatureTable must
have its FeatureRequestMode set to
ManualCache.
|
![]() | PopulateFromServiceAsync(QueryParameters, Boolean, IEnumerableString, CancellationToken) |
Asynchronously performs manual query of data from the service and imports feature results into the table.
|
![]() ![]() | QueryExtentAsync | Asynchronously queries the extent of all features that satisfy the provided parameters. (Inherited from FeatureTable.) |
![]() ![]() | QueryFeatureCountAsync | Asynchronously queries the count of all features that satisfy the provided parameters. (Inherited from FeatureTable.) |
![]() ![]() | QueryFeaturesAsync(QueryParameters) |
Asynchronously performs query against the table.
(Inherited from FeatureTable.) |
![]() | QueryFeaturesAsync(QueryParameters, CancellationToken) |
Asynchronously performs query against the table.
(Inherited from FeatureTable.) |
![]() ![]() | QueryFeaturesAsync(QueryParameters, QueryFeatureFields) |
Queries features from this table's cache and/or from the feature service used to create
this table.
|
![]() | QueryFeaturesAsync(QueryParameters, QueryFeatureFields, CancellationToken) |
Asynchronously submits a query against the table.
|
![]() | QueryRelatedFeatureCountAsync(ArcGISFeature) | Asynchronously queries for the number of related features to the supplied feature. (Inherited from ArcGISFeatureTable.) |
![]() | QueryRelatedFeatureCountAsync(ArcGISFeature, RelatedQueryParameters) | Asynchronously queries for the number of related features to the supplied feature based on the parameters. (Inherited from ArcGISFeatureTable.) |
![]() ![]() | QueryRelatedFeaturesAsync(ArcGISFeature) | Asynchronously queries for related features of a given feature in all relationships. (Inherited from ArcGISFeatureTable.) |
![]() ![]() | QueryRelatedFeaturesAsync(ArcGISFeature, RelatedQueryParameters) | Asynchronously queries for related features of a given feature in a specific relationship. (Inherited from ArcGISFeatureTable.) |
![]() | QueryRelatedFeaturesAsync(ArcGISFeature, RelatedQueryParameters, QueryFeatureFields) |
Asynchronously queries for related features in this service feature table using the provided parameters and
query feature fields. See QueryFeaturesAsync(QueryParameters, QueryFeatureFields)
for more details.
|
![]() ![]() | QueryStatisticsAsync | Calculates values for the requested statistics. (Inherited from FeatureTable.) |
![]() | RetryLoadAsync |
Asynchronously retries loading of this table table.
(Inherited from FeatureTable.) |
![]() | UndoLocalEditsAsync |
Undoes all of the local edits since the last server acknowledgment.
|
![]() ![]() | UpdateFeatureAsync |
Asynchronously updates new Feature on the table.
(Inherited from FeatureTable.) |
![]() | UpdateFeaturesAsync |
Asynchronously updates the set of Features on the table.
(Inherited from FeatureTable.) |
![]() | ValidateRelationshipConstraintsAsync |
Asynchronously validates constraints for a given feature participating in a relationship. In a composite relationship, adding an orphan
feature to the destination table without relating it to an origin feature. Cardinality Violations: In 1:1
relationships, if an origin feature is already related to a destination feature, relating another feature to either of
them. In 1:n relationships, relating a destination feature to more than one origin feature.
To recover from an orphaned destination feature violation, simply relate it to a valid origin feature. You can usually recover from a
cardinality violation by unrelating the appropriate features. Also, see UnrelateFeature(ArcGISFeature)
Note that edit operations do not error when there are constraint violations. This allows you to recover from violations in a back
office operation after applying edits or syncing, if you choose to do so. See ArcGIS Desktop Validate Features process
here.
Note: This method makes network calls to query for the related features if they are not present locally.
(Inherited from ArcGISFeatureTable.) |
Name | Description | |
---|---|---|
![]() ![]() | Loaded |
Occurs when the table is loaded.
(Inherited from FeatureTable.) |
![]() ![]() | LoadStatusChanged |
Occurs when the table LoadStatus is changed.
(Inherited from FeatureTable.) |
![]() | PropertyChanged |
Occurs when a property value changes.
(Inherited from FeatureTable.) |
A service feature table has a FeatureRequestMode, which controls (1) whether features are cached locally (for quicker access by map and scene layers) and (2) whether queries are performed on the local cache or on the server. You can retrieve or modify a table's feature request mode using FeatureRequestMode.
If the table's mode is OnInteractionCache, features are requested from the server in response to user or developer interaction (pan or zoom) and are cached locally. Queries are executed on the cache or (if requested features are not resident in the cache) on the server. This mode is the default.
If the table's mode is OnInteractionNoCache, features are always requested from the server. Features are not cached, and all queries are executed on the server.
If the table's mode is ManualCache, you must call PopulateFromServiceAsync(QueryParameters, Boolean, IEnumerableString), which populates the local table with the features specified by QueryParameters and containing the attributes specified by IEnumerableT. Features are cached for the duration of the session and queries are executed against the cache.
If the table's feature request mode is OnInteractionCache or OnInteractionNoCache, ArcGIS features in the table initially contain a minimum set of attributes and geometry that omits any m-values. This is an optimization for faster rendering. To access all attributes (and geometry with m-values) in features you get from a query, do one of the following:
When used to create a FeatureLayer in a [!:Esri.ArcGISRuntime.UI.Controls.MapView], features are requested from the services in the correct spatial reference to match the spatial reference of the map.
You can use a service feature table to access non-spatial tables from feature services where HasGeometry is false. The feature request mode of the table must be ManualCache, and you must call PopulateFromServiceAsync(QueryParameters, Boolean, IEnumerableString).
The parent class definition allows a service feature table to have editable attribute fields, feature templates, feature types, and editing capabilities defined in Capabilities. See FeatureTemplate and FeatureType.
A service feature table might require authentication to access the service.
WPF
Example Name: DisplayDrawingStatus
Get the draw status of your map view or scene view to know when all layers in the map or scene have finished drawing.
// Copyright 2016 Esri. // // Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. // You may obtain a copy of the License at: http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific // language governing permissions and limitations under the License. using Esri.ArcGISRuntime.Data; using Esri.ArcGISRuntime.Mapping; using Esri.ArcGISRuntime.UI; using System; using System.Windows.Threading; namespace ArcGISRuntime.WPF.Samples.DisplayDrawingStatus { [ArcGISRuntime.Samples.Shared.Attributes.Sample( name: "Display draw status", category: "MapView", description: "Get the draw status of your map view or scene view to know when all layers in the map or scene have finished drawing.", instructions: "Pan and zoom around the map. Observe how the status changes from a loading animation to solid, indicating that drawing has completed.", tags: new[] { "draw", "loading", "map", "render" })] public partial class DisplayDrawingStatus { public DisplayDrawingStatus() { InitializeComponent(); // Create the UI, setup the control references and execute initialization Initialize(); } private void Initialize() { // Hook up the DrawStatusChanged event MyMapView.DrawStatusChanged += OnDrawStatusChanged; // Create new Map with basemap Map myMap = new Map(BasemapType.Topographic, 34.056, -117.196, 4); // Create uri to the used feature service Uri serviceUri = new Uri( "https://sampleserver6.arcgisonline.com/arcgis/rest/services/DamageAssessment/FeatureServer/0"); // Initialize a new feature layer ServiceFeatureTable myFeatureTable = new ServiceFeatureTable(serviceUri); FeatureLayer myFeatureLayer = new FeatureLayer(myFeatureTable); // Add the feature layer to the Map myMap.OperationalLayers.Add(myFeatureLayer); // Provide used Map to the MapView MyMapView.Map = myMap; } private void OnDrawStatusChanged(object sender, DrawStatusChangedEventArgs e) { // Update the load status information Dispatcher.Invoke(delegate () { // Show the activity indicator if the map is drawing if (e.Status == DrawStatus.InProgress) { ActivityIndicator.IsEnabled = true; ActivityIndicator.Visibility = System.Windows.Visibility.Visible; } else { ActivityIndicator.IsEnabled = false; ActivityIndicator.Visibility = System.Windows.Visibility.Collapsed; } }); } } }
<UserControl x:Class="ArcGISRuntime.WPF.Samples.DisplayDrawingStatus.DisplayDrawingStatus" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:esri="http://schemas.esri.com/arcgis/runtime/2013" mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="300"> <Grid> <esri:MapView x:Name="MyMapView" /> <Border Style="{StaticResource BorderStyle}"> <StackPanel> <TextBlock Text="Pan and zoom to see drawing status changes." FontWeight="SemiBold" TextAlignment="Center" /> <ProgressBar x:Name="ActivityIndicator" IsIndeterminate="True" Height="20" Margin="0,5,0,0" HorizontalAlignment="Stretch" /> </StackPanel> </Border> </Grid> </UserControl>
Hyperlink to Example | Description |
---|---|
AddFeatures | Add features to a feature layer. |
ChangeFeatureLayerRenderer | Change the appearance of a feature layer with a renderer. |
ClosestFacilityStatic | Find routes from several locations to the respective closest facility. |
DeleteFeatures | Delete features from an online feature service. |
DisplayAnnotation | Display annotation from a feature service URL. |
DisplayDrawingStatus | Get the draw status of your map view or scene view to know when all layers in the map or scene have finished drawing. |
DisplaySubtypeFeatureLayer | Displays a composite layer of all the subtype values in a feature class. |
EditAndSyncFeatures | Synchronize offline edits with a feature service. |
EditFeatureAttachments | Add, delete, and download attachments for features from a service. |
FeatureCollectionLayerFromQuery | Create a feature collection layer to show a query result from a service feature table. |
FeatureLayerDefinitionExpression | Limit the features displayed on a map with a definition expression. |
FeatureLayerExtrusion | Extrude features based on their attributes. |
FeatureLayerQuery | Find features in a feature table which match an SQL query. |
FeatureLayerRenderingModeMap | Render features statically or dynamically by setting the feature layer rendering mode. |
FeatureLayerRenderingModeScene | Render features in a scene statically or dynamically by setting the feature layer rendering mode. |
FeatureLayerSelection | Select features in a feature layer. |
FindServiceAreasForMultipleFacilities | Find the service areas of several facilities from a feature service. |
GenerateGeodatabase | Generate a local geodatabase from an online feature service. |
GenerateOfflineMapWithOverrides | Take a web map offline with additional options for each layer. |
LocalServerFeatureLayer | Start a local feature service and display its features in a map. |
MapImageLayerTables | Find features in a spatial table related to features in a non-spatial table. |
MapImageSublayerQuery | Find features in a sublayer based on attributes and location. |
QueryFeatureCountAndExtent | Zoom to features matching a query and count the features in the current visible extent. |
RenderUniqueValues | Render features in a layer using a distinct symbol for each unique attribute value. |
ServiceFeatureTableCache | Display a feature layer from a service using the **on interaction cache** feature request mode. |
ServiceFeatureTableManualCache | Display a feature layer from a service using the **manual cache** feature request mode. |
ServiceFeatureTableNoCache | Display a feature layer from a service using the **no cache** feature request mode. |
ShowLabelsOnLayer | Display custom labels on a feature layer. |
StatisticalQuery | Query a table to get aggregated statistics back for a specific field. |
StatsQueryGroupAndSort | Query a feature table for statistics, grouping and sorting by different fields. |
TimeBasedQuery | Query data using a time extent. |
UpdateAttributes | Update feature attributes in an online feature service. |
UpdateGeometries | Update a feature's location in an online feature service. |