[英]Need help fetching CRM Record ID from response given by Dynamics 365 Web API after batch Inserting records
我正在使用Dynamics Web API批处理插入操作插入记录。 我正在使用补丁方法,并在备用键上插入。 我从CRM收到的响应是(response.Content),它给出了批次ID和我插入的备用键。 但是,我也想获取插入记录的GUID。 有什么方法可以读取响应本身中插入记录的GUID。 由于我需要插入数百万条记录,因此使用另一个查询来获取GUID将非常昂贵。
我尝试使用response.Content读取响应,但是如上所述,它不包含GUID。 我还尝试运行其他查询以获取指定备用键的GUID。 这会花费很多时间。 此外,我尝试在插入时生成GUID(因此,消除了在响应中捕获它们的需求),但是客户端不想使用此方法。
//这就是我阅读回复的方式
HttpResponseMessage response = httpClient.SendAsync(request).Result;
var strCttResponse = await response.Content.ReadAsStringAsync();
//请查看预期和实际结果说明
//以下是示例响应(仅适用于一条记录)。 如您所见// //它只有备用键和批次ID。
--batchresponse_63bdc6fd-90f2-4a2b-b11d-ba4cc1d122f4
Content-Type: multipart/mixed; boundary=changesetresponse_ac69e917-8cf9-4ee8-8d4c-9d525ae6f4c3
--changesetresponse_ac69e917-8cf9-4ee8-8d4c-9d525ae6f4c3
Content-Type: application/http
Content-Transfer-Encoding: binary
Content-ID: 1
HTTP/1.1 204 No Content
OData-Version: 4.0
Location: https://<URL>/api/data/v9.1/contacts(new_altkey_contact='46236')
OData-EntityId: https://<URL>/api/data/v9.1/contacts(new_altkey_contact='46236')
// ------------------------------------------------ --------------------------
我正在寻找的结果也应该返回插入记录的GUID。 就像是:
Batch Id
https://<URL>/api/data/v9.1/contacts(new_altkey_contact='altkey')
GUID of the record
您能否验证批生产之外的单个创建的响应。 从我所看到的,您还应该返回AlternateKey。 您也可以问微软这是否真的有意。 有特殊原因为什么需要GUID? 是的,备用键比较慢,因为CRM需要在内部要求GUID,但这对于大数据导入(例如用于初始数据迁移的Exmaple)不会产生任何影响。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.