C# - 插入或更新(如果 CRM 中存在)



从 c# 在 CRM 中执行更新插入操作的最佳方法是什么?

我是否需要每次都获取记录以在插入新记录之前检查它是否存在,或者是否有更好的方法?性能效果呢?

如果有人有任何例子吗?

Boom..繁荣。更新请求

//use alternate key for product
Entity productToCreate = new Entity("sample_product", "sample_productcode", productCode);
productToCreate["sample_name"] = productName;
productToCreate["sample_category"] = productCategory;
productToCreate["sample_make"] = productMake;
UpsertRequest request = new UpsertRequest()
{
Target = productToCreate
};
// Execute UpsertRequest and obtain UpsertResponse. 
UpsertResponse response = (UpsertResponse)_serviceProxy.Execute(request);
if (response.RecordCreated)
Console.WriteLine("New record {0} is created!", productName);
else
Console.WriteLine("Existing record {0} is updated!", productName);

对于Microsoft动态 CRM 联机组织,仅当您的组织已更新到动态 CRM 联机 2015 更新 1 时,此功能才可用。此功能不适用于动态 CRM(本地(。

如果您使用的是本地版本或旧版本,则必须在创建/更新调用之前调用 Retrieve 以验证记录是否存在。