400 - 使用 Web 在 CRM 中保存仅日期字段时出现错误请求 API

400 - Bad Request while saving Date Only field in CRM using Web API

我正在使用 Microsoft Dynamics 365 Web API 交互方法使用 CRM 数据。

这里我想更新字段类型:DATE and TIME.

我在请求正文中传递的日期值如下:

"packfirstday":"1-15-2018"

除上述之外,我还尝试过使用 DateTime 和不同的日期格式。 例如

mm-dd-yyyy
m-dd-yyyy
mm/dd/yyyy
yyyy/mm/dd
yyyy-mm-dd

PS:我尝试 post 没有日期字段它正在成功保存详细信息。

问题不在于代码,简单的误解。

有 2 个组件,即行为和格式。您将格式设置为 'Date only' 而不是 Behavior。行为决定数据库术语,而格式用于在表单中显示日期选择器控件。

因此,当您在网络中设置字段时 api 只有日期部分 - CRM 数据库也需要时间部分。

将行为也设置为仅日期,这样就可以了:

"packfirstday":"2018-01-15" //YYYY-mm-dd format

或者更改您的代码以同时传递时间部分:

"packfirstday":"2018-01-15T11:10:00.000Z" //UTC offset

由于用户本地行为仍然需要时间部分。