Key features

ArcGIS Runtime API for .NET enables you to build mapping and location analysis apps for Android, iOS, and Windows. The API enables you to share your business and application logic code across the desktop and mobile apps you create with Windows Presentation Foundation (WPF), Universal Windows Platform (UWP), Xamarin Android, Xamarin iOS, and Xamarin Forms.

This page describes common ArcGIS Runtime API for .NET capabilities you can add to your app. For an interactive overview, download the ArcGIS Runtime SDK for .NET Samples (WPF) viewer. You can explore dozens of interactive samples and view the code that powers them.

Maps

You can use an interactive map to:

  • Display a basemap layer such as streets or satellite imagery.
  • Access and display data layers based on files, databases, or services, including data you have authored. Use the Portal API to consume content and services from ArcGIS Online or ArcGIS Enterprise portals.
  • Provide context for temporary points, lines, polygons, or text displayed as graphics.
  • Measure distances and explore spatial relationships between geometries.
  • Inspect features from data layers and view attributes that describe them.
  • Save a collection of layers as a web map to be shared across the ArcGIS platform.
  • Rotate the map view.
  • Filter the display of features according to attribute values, area of interest, or a time extent.
  • Integrate native device capabilities, such as GPS, camera, calendar, and contacts.
  • Work with maps and layers while disconnected from the network (offline).

Scenes

You can use an interactive scene to:

  • Display and share collections of 3D geographic data.
  • Show accurate terrain elevation.
  • Perform 3D analysis, such as viewshed and line of sight.
  • Show content beneath the surface.
  • Build augmented reality apps to create immersive 3D experiences.

Layers and data

  • Use a variety of formats of spatial data (data layers), such as hosted ArcGIS services, Open Street Map, KML, WFS, WMTS, Shapefile, and many others.
  • Work with layers while connected or disconnected from the network.
  • Work with nonspatial data and tables.
  • Enable users to collect and edit data in the field and synchronize edits with your enterprise geodatabase.

Services

ArcGIS location services provide a range of capabilities, such as displaying basemaps, searching (geocoding) for addresses, and finding routes between locations. You can also create your own services and consume them in your ArcGIS Runtime app.

For offline, feature services must be sync-enabled and tiled services must be enabled for "export tiles."

Offline

ArcGIS Runtime enables you to use maps and scenes when you have no network or cellular connection.

You can download a portion of a web map to use offline (before going offline, select the area you want) or sideload/install a package of maps or scenes directly onto your device.

You can also download areas of individual feature service, vector tile service, or image tile service data.

ArcGIS Runtime also allows you to access data files already downloaded/sideloaded/installed on your device (multiple formats are supported, such as shapefiles, GeoPackages, KML, geodatabase, and many others).

Capabilities supported by maps and scenes in offline workflows include:

  • Navigate and explore
  • Collect and edit data while offline (in the field, for example) and synchronize your edits with the server when connected again
  • Find places
  • Find routes (driving directions, walking directions, and so on)
  • Calculate service areas
  • Perform analysis

Scenes additionally support the following:

  • Manage a virtual observer with camera controllers
  • Perform interactive visual analysis such as viewshed and line of sight

Styles and visualization

  • Customize the display of symbols in your app using custom styles created in ArcGIS Pro (such as web styles or dictionary symbology).
  • Create your own style using the ArcGIS Vector Tile Style Editor, which allows you to interactively create a style for an Esri vector basemap and save it in ArcGIS Online as a portal item. You can then open the basemap from the portal item to display it in your map with the custom style.
  • Use predefined styles for WMS layers.
  • Use graphics to display large numbers of moving symbols while maintaining the smooth feel of a native app.
  • Depict several pieces of information with a single symbol using a dictionary renderer.
  • Use callouts and labels to show textual information.
  • Configure pop-ups.
Learn more

Query and edit

  • Search, query, and identify geographic features using any combination of spatial, attribute, or temporal criteria.
  • Use simple editing or multi-editor workflows.
  • Edit while disconnected from the network and synchronize your edits when reconnected.
Learn more

Route and directions

  • Calculate optimal routes between locations and generate directions.
  • Calculate drive times and multi-stop routes with driving directions.
  • Use Esri routing data, 3rd party routing data, your own data, or a combination. Download a free sample of Streetmap Premium data (greater Los Angeles area) to use with your ArcGIS Runtime app.
  • Integrate native devices, such as a GPS or a camera. For example, use the current GPS location as the starting point for a route.

Spatial and data analysis

  • Perform geometric operations and evaluate spatial relationships between geometries.
  • Perform spatial analysis using geoprocessing tasks and services. Dozens are available that you can string together for modeling, what-if scenarios, and batch processing.
  • Run local analyses on desktop deploy targets (WPF API with Local Server).
Learn more

Utility networks

  • Use utility network capabilities to trace and analyze the flow of resources, such as gas, water, and electricity.
  • Read utility network information stored in a web map.
  • Use branch versioning for multi-user editing, edit tracking, and what-if analyses.
Learn more

Success stories

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.