21 Aug 2025

The major update to Data Exchange .NET (6.2.0)

The Data Exchange SDK team has released version 6.2.0-beta, delivering enhanced stability, improved performance, and a more consistent, standardized experience. More details can be found here .

The most notable change in version 6.2.0 is the shift from using ExchangeData to ElementDataModel for all data exchange operations. ExchangeData is now internal-only, simplifying the API and consolidating data handling into ElementDataModel.

Major Changes in v 6.2.0-beta:

1. Unified Response Pattern

All client and interface methods now return Task<IResponse<T>>, replacing raw Task<T> returns. This change improves error handling and consistency across the SDK.

2. Event Model Overhaul

Events now use .NET EventHandler<TEventArgs> instead of Action delegates. This provides better type safety and aligns with standard .NET practices.

3. Geometry & Modeling Enhancements

New interfaces like IElementIElementGeometry, and IPrimitiveGeometry offer more granular control over geometry data. Geometry filtering is now supported via GeometryFilters.

 

Migrating to the new version

The migration to 6.2.0-beta is more than just a version bump—it’s a strategic shift toward a cleaner, more maintainable SDK.

This update introduces the ElementDataModel as the primary interface, replacing the older ExchangeData class and this change aims to enhance functionality and encapsulation, making the API more streamlined and efficient.

Key Changes in the Migration

1. Updated Package References: Developers need to update their packages.config to reference Autodesk.DataExchange and Autodesk.DataExchange.UI version 6.2.0. This ensures compatibility and replaces the older 5.2.4-beta versions.

2. Method and Property Access Changes: Deprecated methods that returned ExchangeData, such as GetExchangeDataAsync, have been removed. Instead, developers should use methods like GetElementDataModelAsync and access properties through ElementDataModel.

3. Event Handler Modifications: Event handlers must be updated to accept ElementDataModel parameters instead of ExchangeData. This change reflects the new API design and prevents compilation errors.

4. Data Identifier Creation: Creating DataExchangeIdentifier now involves manually assembling it from ExchangeItem properties like HubId, ExchangeID, and ContainerID. Direct property access patterns from ExchangeData are obsolete.

5. Code Examples Reflect API Shift: Sample code now illustrates the new usage patterns, such as creating ElementDataModel wrappers around exchange data, accessing elements, and syncing data exclusively through ElementDataModel methods.

6. Additional Breaking Changes: The update includes enhanced error handling, modified event subscription patterns, updated method signatures, and potential namespace changes. Developers should conduct thorough code reviews and testing.

For full migration steps, check out this migration guide.

 

If you have not yet enrolled in the beta program, you may access it hereParticipation provides early access and the opportunity to contribute feedback that will help shape the SDK.

Related Article