首页 > 解决方案 > Dynamics WebAPI:仅更新更改的字段?

问题描述

我正在编写一个通过 webapi (v9.0 / 9.1) 访问 Dynamics 365 CE 的应用程序。我的应用程序检索记录并将其显示给用户,用户可以进行更改并再次保存记录。

在这种情况下,我的应用程序将尝试使用针对 Dynamics WebAPI 的 Patch 调用来保存更改。

是否有一种内置方式仅更新用户更改的字段?这是在一个 Web 应用程序中,我不能确定是否能够进行适当的客户端更改跟踪,这意味着我必须对 CRM 进行另一次调用,比较两条记录并仅将更新的值发送到 CRM将整个记录发送到 CRM。第二种情况显然更高效,更容易,但我似乎无法找到一种方法来告诉 WebAPI 只更新更改的字段..

标签: dynamics-crmdynamics-crm-365dynamics-crm-webapidynamics-crm-365-v9

解决方案


使用 Web API 检索记录属性并将值绑定到 UI 控件,识别属性并仅使用那些脏字段更新源系统——这就是通常的循环。

您在识别脏字段方面遇到的问题 - 这不是实际的更改跟踪。在提交更新服务器请求 (PATCH) 之前,尝试使用有效的方式在客户端识别它们。

出于各种原因,例如丢失审计跟踪、CRM 插件/工作流中的管道业务逻辑等,不建议发送整个记录字段值而不管其脏污程度。


推荐阅读