Announcing ArcGIS Runtime SDK for .NET 100.8

05-13-2020 10:14 AM
Labels (1)
Esri Frequent Contributor
1 2 773

We are pleased to announce the 100.8 release of ArcGIS Runtime SDK for .NET. This release includes significant new features, enhancements to existing features, performance improvements, and bug fixes. You can read about the topics common to all ArcGIS Runtime SDKs here, but for you - our .NET community - there are several specific details we would like to highlight.



At the heart of the ArcGIS Runtime SDK is the API you use when building your Android, iOS, UWP, and WPF apps, let's start there...


API : Nullability

Nullability (or Nullable Reference Types) introduced with C# 8.0 enables you to be explicit in your code concerning when a reference may be null and when it is never supposed to be null, with the goal of avoiding `NullReferenceExceptions` at runtime. Compile time warnings help to show you where you perhaps made an assumption that a variable will never be null and you missed implementing a null check and that could later cause a crash while users are running your app. Over the past year the ArcGIS Runtime .NET dev team has been preparing to support nullability of reference types and over the past few months this process has progressed to incrementally enabling the API source code to support nullability. Adding this valuable information to the ArcGIS Runtime API will be a multi-release effort and there is still a significant amount for us to do. With our 100.8 release, if your project uses C# language version 8.0 and you have opted your project into the nullable reference types feature, you will begin to see information in Visual Studio declaring the expected null state of reference type variables. But until we announce the API as fully supporting nullability you should consider this just a preview of this exciting feature.



Enhancements to features that your users will see in the UI of your apps:

  • Support for showing the dark style Esri OAuth sign-in page on platforms which have a dark UI mode/theme (Android, iOS, and UWP). For more information see OAuthClientInfo.UserInterfaceStyle.
  • Improved positioning of Callouts to avoid clipping when placed in the corners of the screen (WPF and UWP).
  • Resolved a few issues related to the layout of Callout relative to its content and when the TapLocation or Geometry was null.


API : Web and security

Ongoing work to enable efficient, secure access to remote content:

  • Implemented HTTP request caching for WPF when targeting .NET Core (.NET Framework has built-in caching).
  • Improved OAuth refresh and expiration behavior.
  • Added OAuth TokenExpirationInterval property (replaces the deprecated TokenValidity).
  • Improved PKI certificate authentication challenge detection when a connection is refused.
  • Added the CredentialPersistence class and associated support on the AuthenticationManager class.
    • Note in a future release default implementations for Android, iOS, UWP and WPF will be added.


API : Additions and enhancements 

Specific API additions in response to your feedback: 


API : Performance and internal improvements

When working with many tens, or hundreds, of thousands of graphics we had some reports of memory or speed concerns. Building on improvements included in v100.7 (December 2019) we spotted a few more opportunities to further optimize performance for you in v100.8: 

  • Reduced managed memory per GeoElement instance (Graphic, Feature, and the new RasterCell).
  • Reduced managed and un-managed memory and a significant speed-up when working working with Graphics with geometry and attributes.

One the primary benefits of tiled layers is rapid, seamless display of layer content. We also made a small but significant tweak to further optimize tile request behavior during sustained user interaction. This tweak results in fewer tile requests and fewer request cancellations when you are are navigating through multiple levels of detail to your area of interest. 


SDK : Toolkit

The Toolkit for ArcGIS Runtime SDK for .NET is released in unison with ArcGIS Runtime 100.8. This release builds on top of the major 100.7.x update of the Toolkit in February 2020 that delivered:

  • Support for .NET Core with WPF.
  • New Bookmarks control.
  • Complete rewrite of Legend control and TableOfContents controls.
    • Note TableOfContents is currently in Preview.
  • Dark Mode support for iOS.
  • New DocFX-based website with API reference and concept documentation.


SDK : Documentation 

New and enhanced content added to the documentation for ArcGIS Runtime SDK for .NET (note the platform selector at the top of each Guide topic for selecting WPF | UWP | Android | iOS | Forms):


SDK : Samples

New samples, sample updates, and enhancements to the sample viewer apps (each sample is available for all platforms although links below typically go to the WPF example):


SDK : Open Source Apps

Updates to our Open Source Apps initiative during the 100.8 release cycle:


SDK : Demos

  • New demo: SymbolEditor
    • A WPF .NET Core app (and MSIX installer project) that shows using mobile styles from ArcGIS Pro and how to create/edit vector symbol layers.


System requirements changes and deprecation notices

With each release of ArcGIS Runtime we announce future plans to deprecate support for specific platforms and we may enact some deprecation notices announced at previous releases. Here are some notable announcements and changes at the 100.8 release:

  • Android x86_64 support added.
  • Android minimum version is now 5 (API 21).
  • UWP and WPF Windows 10 minimum version is now 1803 (build 17134).
  • iOS minimum version is now iOS 12.
  • Support for ArcGIS Desktop 10.x packages with ArcGIS Runtime Local Server is deprecated. Version 100.8 will be the last ArcGIS Runtime Local Server release to support ArcGIS Desktop 10.x packages. The next version will require packages to be created with ArcGIS Pro 2.6.x.
  • Support for Citrix XenDesktop 7.6 is deprecated. Customers are encouraged to migrate to Citrix new product line, branded Citrix Virtual Apps and Desktops. A minimum of Citrix Virtual Apps and Desktops 7 1912 LTSR will be supported at the next release.
  • The classic geocode locator format (*.loc) will not be supported after ArcGIS Runtime version 100.9.0. After that release, only the newer *.loz locators, introduced with ArcGIS Pro 2.3 and ArcGIS Runtime 100.5.0, will be supported.


ArcGIS Runtime Local Server

There is an upcoming 100.8 release of the ArcGIS Runtime Local Server component to provide map and geoprocessing package compatibility with ArcMap 10.8.x and ArcGIS Pro 2.5.x. We anticipate being able to announce this release within the new few weeks. Until then you can update your existing WPF projects to reference Esri.ArcGISRuntime.WPF 100.8 and continue to reference Esri.ArcGISRuntime.LocalServices 100.6.



Thank you for your ongoing support and feedback. We hope you will find these updates valuable as you continue to build amazing technology for your users with ArcGIS Runtime.


The ArcGIS Runtime .NET Dev Team

About the Author
Product Manager - ArcGIS Runtime