To include ArcGIS Maps capabilities in your .NET applications you add a reference to one or more of the ArcGIS Maps SDK for .NET NuGet packages in your Visual Studio projects. A set of project templates for each of the application platforms and UI frameworks supported by ArcGIS Maps SDK for .NET is available as a Visual Studio extension.
Reference ArcGIS Maps SDK for .NET in your projects
ArcGIS Maps SDK for .NET NuGet packages are hosted on NuGet.org. To get started using NuGet to consume packages in Visual Studio, see Install and use a package in Visual Studio (Windows) or Install and use a package in Visual Studio (Mac) in the Microsoft documentation.
For example, to add a reference to ArcGIS Maps SDK for .NET in Visual Studio on Windows, follow these steps:
-
In the Visual Studio Solution Explorer window, right-click Project and choose Manage NuGet Packages.
-
Select the Browse tab and choose "nuget.org" as the Package source.
-
In the Search text box type "Esri". You will see several matches for the different frameworks supported by ArcGIS Maps SDK for .NET.
-
Select the NuGet package you want to install and click the Install button. For more information on the NuGet Package Manager, see Install and manage packages in Visual Studio using the NuGet Package Manager in the Microsoft documentation.
-
Review the content on the Preview Changes dialog and choose OK to proceed with the installation.
-
When installation is complete, the added package(s) appear on the Installed tab in NuGet Package Manager and you can now develop with ArcGIS Maps SDK for .NET.
Toolkit
ArcGIS Maps SDK for .NET Toolkit contains user interface (UI) controls and components to use out-of-the-box or customize for your apps. You can include the Toolkit in your project as a NuGet package or get the source code from the GitHub repository and build the Toolkit yourself.
Install the Visual Studio project templates (optional)
Install the extension
The ArcGIS Maps SDK for .NET Project Templates extension for Visual Studio provides application project templates for Android, iOS, and Windows. The project templates reference the appropriate NuGet packages for each platform and use a Model-View-ViewModel (MVVM) design pattern. For more information about working with extensions see the topic Manage extensions for Visual Studio in the Microsoft documentation.
-
In Visual Studio (Windows), from the menu bar choose Extensions > Manage Extensions to show the Manage Extensions dialog.
-
In the Search text box, type "ArcGIS".
-
Select the ArcGIS Maps SDK for .NET Project Templates extension and choose Download. The extension is scheduled for install and will be installed after all instances of Visual Studio have been closed.
-
Close the Manage Extension dialog.
-
Close Visual Studio to continue installing the extension.
-
In the VSIX Installer dialog that appears when Visual Studio closes, choose Modify.
-
When the installation completes, choose Close on the installer dialog.
-
The next time you choose to create a new project in Visual Studio, you will see ArcGIS project templates for all available platforms.
Install from a NuGet package
The Esri.
NuGet package published on nuget.org provides application project templates for .NET MAUI (iOS, Android, WinUI), WPF, WinUI and UWP.
Follow these instructions to install project templates using a command line interface:
-
Open a Command Prompt.
-
Install new templates using the following command:
dotnet new --install Esri.
ArcGIS Runtime. Project Templates -
Once the templates are installed, open Visual Studio and choose the newly installed .NET MAUI template called ArcGIS Maps SDK for .NET MAUI App. Alternatively, use the following command to create a new ArcGIS Maps SDK for .NET MAUI App.
dotnet new mauimap
Additional downloads
Additional sources of sample code, data, and components are available to enhance your development projects. You can even download this guide as stand-alone developer documentation.
Sample code
Get sample code that illustrates a variety of powerful ArcGIS Maps capabilities that you can add to your own applications. Search for samples and browse the relevant code in the samples documentation or download the source code from the samples repository to build and run the samples locally.
A compiled Windows desktop (WPF) version of the sample viewer is available on the Microsoft Store. Before running the application, please refer to the system requirements to ensure your machine can run the sample viewer application properly.
Local Server
Local Server enables you to run offline geoprocessing tasks to provide advanced spatial analysis and data manipulation in your applications. Conceptually, these tasks work in the same way as geoprocessing tasks published with ArcGIS Enterprise. If you want to run offline geoprocessing tasks in your app, install Local Server following the steps in Local Server.
Supplemental data
StreetMap Premium
StreetMap Premium delivers a high-quality, multiscale cartographic map display with enriched street data. In addition, it provides accurate geocoding, optimized routing, easy to follow directions, and powerful network analysis. StreetMap Premium maps can simultaneously fulfill the need for an address locator, street network dataset, and basemap in your apps. They are consistent across all regions of the world and are available for both online, connected scenarios and for use in offline, disconnected scenarios in the form of mobile map packages.
If you want to use StreetMap Premium data (the StreetMap Premium extension), download the demonstration data from the downloads page for development and testing. Please contact Esri Customer Service for access to a region of your choice for development and testing or to license StreetMap Premium data for deployment.
Projection Engine data
Datum transformations are used when geometries must be projected from one spatial reference to another when there is a difference in the datum that underlies the two spatial references. Datum transformations can be mathematically defined (equation-based transformations), or may rely on external supporting files (grid-based transformations). Certain Projection Engine data files must be present when you use a grid-based transformation in your app; attempting to use a transformation with missing Projection Engine files will cause an error. The API can detect whether the necessary files are available on the local file system.
If your app requires grid-based transformations, you can download supporting Projection Engine files from the downloads page. See the Spatial references topic for more information about working with coordinate systems, projections, and datum transformations.
Electronic Navigational Charts (ENC)
Electronic navigational charts (ENCs) are georeferenced vector datasets for the visualization and analysis of hydrographic and maritime information. This SDK supports ENCs that conform to the International Hydrographic Organization (IHO) S-57 standard.
If you want to work with Electronic Navigational Charts (ENC), add the Esri.
NuGet package to your app, or download the hydrography directory from the downloads page.
See the Display electronic navigational charts topic for more information about working with ENC data.
Developing in offline environments with ArcGIS Maps SDK for .NET
NuGet packages and project templates
If you are developing apps in an environment with limited online access, you may want to reference the ArcGIS Maps SDK for .NET from a local NuGet package feed. An additional Visual Studio Extension (Windows) is available that contains a subset of the NuGet packages published on NuGet.org. Installing this extension will configure a local NuGet package source in your user profile under %localappdata%\
. See the Microsoft documentation for more information about local NuGet package feeds.
Download and install Visual Studio Extensions
You can download both the Project Template extension and NuGet Package extension from the downloads page.
-
Save the files to a location accessible from your development machine.
-
To install a downloaded Visual Studio extension, double-click the .vsix file (or select the file and press Enter).
-
If you have multiple versions of Visual Studio installed, the VSIX Installer dialog will display a list of the available Visual Studio products for which to install the extension (for example Visual Studio Enterprise 2022). Select the target Visual Studio instance(s), then review the license terms and choose Install.
-
When installation is complete, you will see confirmation for the selected products. Choose Close to finish the installation. Once installed, use the Visual Studio Manage Extensions dialog to enable, disable, or uninstall the extension. For more information, see topic Install without using the Manage Extensions dialog box in the Microsoft documentation.
Install NuGet packages from the local Esri package source
To install a NuGet package from the local Esri package source:
-
In the Visual Studio Solution Explorer window, right-click Project and choose Manage NuGet Packages.
-
Select the Browse tab and choose Esri as the Package source.
-
You will see several NuGet packages for the different frameworks supported by ArcGIS Maps SDK for .NET.
-
Select the NuGet package you want to install and click the Install button. For more information on the NuGet Package Manager, see Install and manage packages in Visual Studio using the NuGet Package Manager in the Microsoft documentation.
-
Review the content on the Preview Changes dialog and choose OK to proceed with the installation.
-
When installation is complete, the added package(s) appear on the Installed tab in NuGet Package Manager and you can now develop with ArcGIS Maps SDK for .NET.
Stand-alone developer documentation
You can download the developer documentation as an archive from the downloads page. The archive contains instructions to serve the documentation from a local web server so you can access it without a connection to the internet. The stand-alone documentation includes the developer guide, API reference, tutorials, and samples documentation. This documentation is designed to run on a local stand-alone computer or on an internal network and not on the public internet.
To serve the documentation locally:
- Download the documentation for the SDK you want to use. The downloaded files are in a .zip archive format.
- Extract the archive to a local folder. The extracted archive has two subfolders:
public
andinstall
. - Open the
READM
file in theE.md install
folder and follow the instructions for your chosen web server.