ArcGIS Pro 3.1 API Reference Guide
Introduction / ArcGIS Pro 3.1 API Reference Guide
In This Topic
    ArcGIS Pro 3.1 API Reference Guide
    In This Topic
     ArcGIS Pro SDK for .NET
    ArcGIS Pro Version: 3.1.0.41833

    Extend ArcGIS Pro with the ArcGIS Pro SDK for Microsoft .NET. The ArcGIS Pro SDK provides four main extensibility patterns: add-ins, managed configurations, plugin datasources and CoreHost applications. You can leverage modern .NET features and patterns such as Task Asynchronous Programming (TAP), LINQ, WPF Binding, and MVVM to build integrated 2D and 3D add-ins with the ArcGIS Pro APIs.

     What is new
     Requirements

    The requirements for the machine on which you develop your ArcGIS Pro add-ins are listed here.

    ArcGIS Pro

    • ArcGIS Pro 3.1

    Supported platforms

    • Windows 11 (Home, Pro, Enterprise)
    • Windows 10 (Home, Pro, Enterprise) (64 bit)

    Supported .NET

    Supported IDEs

    • Visual Studio 2022 (v17.2 or higher)
      • Community Edition
      • Professional Edition
      • Enterprise Edition

    Third party assemblies

    • Newtonsoft Json:
      • At 3.1, ArcGIS Pro is using version 13.0.1.25517 of the Newtonsoft Json NuGet. If you require Newtonsoft NuGet in your add-ins it is recommended to use the same version.
    • WebView2:
      • Add-in developers can use the new WebViewBrowser control based on Microsoft Edge WebView2. Consult the WebView2 manifest in the Pro bin\WebView folder for the current WebView2 fixed version runtime in use by ArcGIS Pro.
     ArcGIS Pro API

    The ArcGIS Pro APIs are managed .NET assemblies. Intermediary assemblies containing .NET metadata or PIAs (Primary Interop Assemblies) are not required.

    Add any of the ArcGIS Pro managed assemblies that comprise its API as references directly in your Visual Studio add-in projects. 

    A complete list of the ArcGIS Pro assemblies constituting the public API is provided below:

     Core

    Core assemblies are located within the {ArcGIS Pro Installation folder}\bin.

    Assembly Description
    ArcGIS.Core.dll Provides CIM, Geodatabase, Geometry and Utility Network APIs.
    ArcGIS.CoreHost.dll Provides Host.Initialize to initialize ArcGIS.Core.dll for stand-alone use.
    ArcGIS.Desktop.Framework.dll Provides the application framework to include add-in contracts, DAML support, and base classes. This assembly must be referenced by every add-in.
    ESRI.ArcGIS.ItemIndex.dll Provides functionality to create and work with Custom items.
     Extensions

    Major subsystems within ArcGIS Pro are organized into units called extensions. Extension assemblies are located within the {ArcGIS Pro Installation folder}\bin\Extensions folder in their own individual subfolder. Extension subfolder names are logically named for the unit of functionality they represent. For example, Mapping, Editing, Layout, and so on.

    Assembly Description
    ArcGIS.Desktop.Catalog.dll Provides access to project content items (map items, layout items, style items, folder items, and so on).
    ArcGIS.Desktop.Core.dll Provides functionality to create and manage projects, access to events associated with the current project, and the ability to execute geoprocessing tools.
    ArcGIS.Desktop.DataReviewer.dll Provides functionality to establish and manage Reviewer Results, Sessions and Batch Jobs in a project.
    ArcGIS.Desktop.Editing.dll Provides access to the editing environment and core editing functionality required for custom edit tool implementations.
    ArcGIS.Desktop.Extensions.dll Provides extension methods for other ArcGIS Pro classes. Provides a base class for custom map tools.
    ArcGIS.Desktop.Geoprocessing.dll Provides access to geoprocessing history items stored in the project. (Note: Adds a reference to ArcGIS.Desktop.Core.dll to execute geoprocessing tools.)
    ArcGIS.Desktop.Layouts.dll Provides functionality for manipulating elements on a layout and exporting to a variety of image formats.
    ArcGIS.Desktop.Mapping.dll Provides types to create maps and layers, label features, perform query operations, and visualize them in 2D or 3D. Provides a raster API to create raster layers and customize raster rendering, and an API to manage styles, style items, and symbols.
    ArcGIS.Desktop.TaskAssistant.dll Provides the Tasks framework, allowing developers to access, open, close, or export task items.
    ArcGIS.Desktop.Workflow.dll Provides functionality to create, configure, and execute Workflow Manager Classic jobs and queries. Provides functionality to retrieve configuration information from the Workflow Manager Classic database.
    ArcGIS.Desktop.Workflow.Client.dll Provides functionality to retrieve job id and connection information for Workflow Manager.
     Extensions with no public API

    There are extension assemblies in {ArcGIS Pro Installation folder}\bin\Extensions subfolders) that do not have a public API. They are currently for Esri internal use only.

    • ArcGIS.Desktop.Analyst3D.dll
    • ArcGIS.Desktop.Aviation.dll
    • ArcGIS.Desktop.BusinessAnalyst.dll
    • ArcGIS.Desktop.Cad.dll
    • ArcGIS.Desktop.Charts.dll
    • ArcGIS.Desktop.DataEngineering.dll
    • ArcGIS.Desktop.DataSourcesRaster.dll
    • ArcGIS.Desktop.Defense.dll
    • ArcGIS.Desktop.DefenseMapping.dll
    • ArcGIS.Desktop.Editing.PushPull.dll
    • ArcGIS.Desktop.FullMotionVideo.dll
    • ArcGIS.Desktop.GAWizard.dll
    • ArcGIS.Desktop.GeoProcessing.BDC.dll
    • ArcGIS.Desktop.GeoProcessing.SAModels.dll
    • ArcGIS.Desktop.Geostatistics.dll
    • ArcGIS.Desktop.Indoors.dll
    • ArcGIS.Desktop.Intelligence.dll
    • ArcGIS.Desktop.Intelligence.Common.dll
    • ArcGIS.Desktop.KnowledgeGraph.dll
    • ArcGIS.Desktop.LocationReferencing.dll
    • ArcGIS.Desktop.Maritime.dll
    • ArcGIS.Desktop.Metadata.dll
    • ArcGIS.Desktop.MotionImagery.dll
    • ArcGIS.Desktop.NetworkAnalysis.Facility.dll
    • ArcGIS.Desktop.NetworkAnalysis.NetworkDiagrams.dll
    • ArcGIS.Desktop.NetworkAnalysis.Transportation.dll
    • ArcGIS.Desktop.Search.dll
    • ArcGIS.Desktop.Sharing.dll
    • ArcGIS.Desktop.TerritoryDesign.dll

    Note: Static string resource properties and image resources included within the public API assemblies are for Esri internal use only. They are not intended for use in 3rd party Add-ins.

     ArcGIS Pro Extensions Nuget

    The ArcGIS Pro Extensions NuGet contains all the Pro API assemblies needed to compile your Add-ins and Configurations and offers an alternate way to reference the ArcGIS Pro assemblies in your add-in and configuration over traditional file based references.

    To use the ArcGIS Pro Extensions NuGet, set the NuGet Package Management format setting in Visual Studio to be PackageReference.

    ProGuide: ArcGIS Pro Extensions NuGet

    See Also