I am using crm 2016 and I need to clone a record using plugin, after googling I found out that I need to use Microsoft.Xrm.Client
that hold the clone()
function - which is not in 2016 SDK because of MS reorganization.This lib is in 2015 SDK.
My questions are :
1. If I'll take that lib from CRM 2015 and use it in 2016 will it be supported?
2. If it's not supported what are my options to clone a record in server side?
The method Clone()
in the Microsoft.Xrm.Client
only creates a copy of the Entity
object in memory. It does not create a copy in the database of CRM. When you need to create a copy in the database just instantiate a new Entity
object and pass it to the Create()
method of the IOrganizationService
interface.
When you really need a deep clone as described on MSDN you could consider writing one yourself. In most scenarios you will only need to copy the objects in the attributes collection. Of those objects only the reference types EntityReference
, OptionSetValue
and Money
wiil need your special attention.
I would not advise to use deprecated libraries.