Data8 Duplicare™ is a powerful tool that sits on Dataverse and vastly improves the duplicate detection and merging functionalities within that platform. Due to the design of the Data8 Duplicare™ tool, it can actually be used directly in code too and this Duplicare C# SDK helper is designed to make that process as easy as possible.

Prerequisites

Data8 Duplicare™ must be installed, licensed and configured with your Dataverse environment.

Getting access to the package

To use the package, you can just use the NuGet package explorer and download our package from https://www.nuget.org/packages/Data8.DuplicareHelper/

Usage – Set Up

To set up the duplicare client, you simply need to create a new instance of the DuplicareClient, passing through the IOrganizationService.
				
					var duplicareClient = new DuplicareClient(org);
				
			

Usage – Duplicate Detection

To find duplicates using duplicare, you need to pass an entity through and it will perform the duplicate checks of that entity using the Dedupe+ Rules that are configured for real-time checks. The entity can be a “dirty” entity i.e. not saved – enabling you to look for duplicates before creation if required.

				
					var results = duplicareClient.FindPotentialDuplicates(newContact);
				
			

Usage – Multi Record merging

To apply the Data8 Duplicare Merge+ Rules across a number of records, you need to pass through the entity references of those records you wish to combine as well as an option to pass in a “ghost” record i.e. one that hasn’t already been saved.

				
					var mergeResults = duplicareClient.ApplyMergeRules(new[] { a1, a2, a3 }, null);
				
			
The idea of the ghost record is that it could be used to enrich existing records, without actually making that record in the system. For example, you may have "telephone2" populated in the ghost record but not in the existing record and by applying the ghost record to the existing record(s), you would add that new data in.
				
					var enrichResults = duplicareClient.ApplyMergeRules(new[] { enrichA1 }, ghostRecord);
				
			

Join the Conversation

Receive the latest news, views and hot topics directly in your inbox! Sign up below

Follow us on social media