Hi all,
I originally created an ArcGIS Pro Add-in using the ArcGIS Pro SDK for .NET version 3.5, targeting ArcGIS Pro 3.5 and .NET 8. The project builds and runs fine in that environment.
However, I now need to rebuild or use the same add-in on a machine running ArcGIS Pro 3.3 (or 3.1) — and I'm running into version compatibility issues.
🔧 What I’ve done:
Moved the source code to a new machine with ArcGIS Pro 3.1 installed.
Reinstalled the SDK 3.1 .vsix files to avoid template mismatch.
Updated the Visual Studio environment and ensured .NET 6 is still targeted.
Ensured reference paths point to C:\Program Files\ArcGIS\Pro\bin for 3.1.
:exclamation_mark: Problems:
Some referenced assemblies from SDK 3.5 (e.g., ArcGIS.Desktop.KnowledgeGraph, ArcGIS.Desktop.DataGrid.Contrib.Wpf) seem to not exist or are incompatible with SDK 3.1.
I'm unsure if code written for SDK 3.5 will always work with 3.1 or 3.3, or if there are API-breaking changes.
:question_mark: My Questions:
What’s the best practice for backporting an ArcGIS Pro add-in from SDK 3.5 to SDK 3.3 or 3.1?
Are there known compatibility issues or API differences that would require code changes?
Is there a reliable way to target multiple SDK versions in the same project?
Are there tools or documentation that list what’s new or removed per SDK version?
Any tips, guidance, or references would be much appreciated!
Thanks in advance!
– Ali
Your approach to move your source code to a previous release version of ArcGIS Pro is correct:
You have to move the source code to a development machine with ArcGIS Pro 3.1 installed.
You also have to install the matching ArcGIS Pro SDK (3.1 in your case) Visual Studio extensions.
You open your Add-in solution in Visual Studio and change the project's 'Target Framework' back to .NET 6.0, clean the project, and then rebuild the project.
Use the ArcGIS Pro SDK's 'Pro Fix References' tool (right click on the solution or project file) if the reference path to ArcGIS Pro assemblies changed.
Thank you so much, part of the add-in working now...the one depends on the toolbox, but other part didn't work yet.
What is the 'other part' of your add-in doing ?