Show / Hide Table of Contents

Class ArcGISFeature

Represents a Feature stored in an ArcGISFeatureTable.

Inheritance
Object
GeoElement
Feature
ArcGISFeature
Implements
INotifyPropertyChanged
ILoadable
Feature.Refresh()
Feature.FeatureTable
Feature.Geometry
Feature.GetAttributeValue(String)
Feature.GetAttributeValue(Field)
Feature.SetAttributeValue(String, Object)
Feature.SetAttributeValue(Field, Object)
Feature.INotifyPropertyChanged.PropertyChanged
GeoElement.Attributes
Object.Equals(Object)
Object.Equals(Object, Object)
Object.GetHashCode()
Object.GetType()
Object.MemberwiseClone()
Object.ReferenceEquals(Object, Object)
Object.ToString()
Namespace: Esri.ArcGISRuntime.Data
Assembly: Esri.ArcGISRuntime.dll
Syntax
public sealed class ArcGISFeature : Feature, INotifyPropertyChanged, ILoadable
Remarks

An ArcGISFeature can contain:

  • A set of attributes that describe the real-world entity it represents.
  • A geometry that defines its location and shape. The geometry might contain m-values, which are typically used for linear referencing.
  • Zero or more feature attachments such as images or documents.
A feature's attribute values can be changed, but attribute definitions cannot be added, deleted, or modified.

If you create a ServiceFeatureTable from the URL of a feature service, features in the table are initially in one of the following states:

  • A minimum set of attributes are available in the table, and m-values are omitted. This is an optimization for faster rendering.
  • All attributes defined by the service are available in the table, including m-values, which might be NaN.

The initial state of features is determined by the feature request mode of the table. For important details, see FeatureRequestMode.

By default, a query on ArcGISFeatures in a minimum state will return them in the same state. To access all attributes (or the m-values) of features returned by a query, you must load the features. You can do one of the following:

  • Call LoadAsync() on each feature.
  • Call LoadOrRefreshFeaturesAsync(IEnumerable<Feature>) and pass a collection of features to be loaded.
  • Call QueryFeaturesAsync(QueryParameters, QueryFeatureFields) with the constant LoadAll, which returns all features in a fully loaded state.

For more information, see the class description for ServiceFeatureTable.

Properties

Name Description
CanEditAttachments

Gets a value indicating whether attachments on this feature can be edited.

CanUpdateGeometry

Gets a value indicating whether geometry on this feature can be edited.

LoadError

Gets the load status of feature.

LoadStatus

Gets the load status of feature.

Methods

Name Description
AddAttachmentAsync(String, String, Byte[])

Asynchronously adds a new attachment to this feature.

CancelLoad()

Cancels an ongoing load.

DeleteAttachmentAsync(Attachment)

Asynchronously deletes the specified attachment from this feature.

DeleteAttachmentsAsync(IEnumerable<Attachment>)

Asynchronously deletes the specified attachment from this feature.

GetAttachmentsAsync()

Asynchronously retrieves a collection of Attachment associated with this feature.

GetFeatureSubtype()

Gets the corresponding FeatureSubtype for this feature.

LoadAsync()

Initiates loading of feature.

RelateFeature(ArcGISFeature)

Sets up a relationship between this feature and the provided feature.

RelateFeature(ArcGISFeature, RelationshipInfo)

Sets up a relationship between this feature and the provided feature based on the given relationshipInfo.

RetryLoadAsync()

Retry loading feature.

UnrelateFeature(ArcGISFeature)

Removes the relationship between this feature and the provided feature.

UpdateAttachmentAsync(Attachment, String, String, Byte[])

Asynchronously updates the specified Attachment of this feature.

Events

Name Description
Loaded

Occurs when feature is loaded.

LoadStatusChanged

Occurs feature's LoadStatus is changed.

Applies to

TargetVersions
.NET Standard 2.0100.3 - 200.0
.NET 6.0100.13 - 200.0
.NET 6.0 Windows100.13 - 200.0
.NET 6.0 Android200
.NET 6.0 iOS200
.NET Framework100.0 - 200.0
.NET 5100.10 - 100.12
.NET Core 3.1100.7 - 100.12
Android100.0 - 100.15
iOS100.0 - 100.15
UWP100.0 - 200.0

Relevant samples

Add features: Add features to a feature layer.
Edit feature attachments: Add, delete, and download attachments for features from a service.
List related features: List features related to the selected feature.
Map image layer tables: Find features in a spatial table related to features in a non-spatial table.
Perform valve isolation trace: Run a filtered trace to locate operable features that will isolate an area from the flow of network resources.
In This Article
Back to top Copyright © 2022 Esri.