Explore ArcGIS Maps SDK for .NET with dozens of interactive samples. Experience the SDK's powerful capabilities and learn how to incorporate them into your own apps. View the code behind each sample from within the app to see just how easy it is to use the SDK.
Download the sample viewer apps onto your devices:
Or, you can browse a searchable list of samples on the ArcGIS for developers website:
If you want to modify or debug sample code, you can clone this repo and load one of the following solutions:
- All:
src\ArcGIS.Viewers.All.sln
- .NET MAUI:
src\MAUI\ArcGIS.Samples.Maui.sln
If you are only interested in one platform, you can open a platform-specific solutions:
- WPF .NET:
src\WPF\WPF.Viewer.Net.sln
- .NET MAUI:
src\MAUI\ArcGIS.Samples.Maui.sln
- WinUI:
src\WinUI\ArcGIS.WinUI.Viewer.sln
When the ArcGIS.Viewers.All.sln
and WPF.Viewer.Net.sln
are opened in Visual Studio, you can change the framework to .NET Framework from the debug button dropdown menu.
The following platforms are being kept for reference, but no new sample implementations are being added:
- UWP:
src\Windows\ArcGIS.UWP.Viewer.sln
IMPORTANT When you run the samples, you will need to provide an API key. An API key is a unique long-lived access token that is used to authenticate and monitor requests to ArcGIS location services and private portal items. You can create and manage an API key using your portal when you sign in with an ArcGIS Location Platform account or an ArcGIS Online account with administrator access or a custom role that has the Generate API keys privilege. To learn how to create and manage API keys, go to the Create an API key tutorial to create a new API key.
- The .NET sample viewers have a prompt for setting an API key. You can also hardcode your API key in the
GetLocalKey() method
of theApiKeyManager class
. - Before using WinUI, install the latest Windows SDK and the vsix plugin.
- When compiling Universal Windows Platform or WinUI samples, make sure that you are compiling against x86/x64/ARM platform and not using AnyCPU.
Several samples require local data to function properly. That data is downloaded to local storage automatically when a sample is run.
This process is handled by the DataManager
class (located in the 'Managers' folder in each viewer project). Samples
that use the data manager to download their data are differentiated as follows:
- They have
RequiresOfflineData
set to true in their metadata.json files - They have one or more entries under
DataItemIds
in their metadata.json files (these are portal item Ids) - They use the data manager to identify the correct path for their offline files at run time
See the contribution guidelines for more detailed information.
Supported system configurations for ArcGIS Maps SDK for .NET
Esri uses several tools to more efficiently manage the content in this repo. See Tools for more information.
Anyone and everyone is welcome to contribute.
Copyright 2022 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
https://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.
A copy of the license is available in the repository's license.txt file.