1
    {Method: POST, RequestUri: 'https://cmpanydynamicsurl.com/api/data/v8.2/tasks', Version: 1.1, Content: System.Net.Http.StringContent, 
     Headers:
      {
        OData-MaxVersion: 4.0
        OData-Version: 4.0
        Accept: application/json
        Content-Type: application/json; charset=utf-8
        Content-Length: 162
      }}

使用上述请求,我正在尝试使用 Dynamics API 发布操作针对帐户创建任务。

正在发送的 Json 模型 -

 {
    "subject":"NEW TEST TASK FOR ACCOUNT",
    "_regardingobjectid_value@odata.bind":"/accounts(08b582ad-4e2f-e711-8101-5065f38a4a21)"
 }

我收到此错误消息并且没有运气搜索互联网?

属性“_regardingobjectid_value”在有效负载中仅具有属性注释但没有属性值被声明为“Edm.Guid”类型。在 OData 中,只有导航属性和命名流可以表示为没有值的属性。

4

1 回答 1

5

正确的有效载荷是

{
    "subject": "NEW TEST TASK FOR ACCOUNT",
    "regardingobjectid_account@odata.bind": "/accounts(08b582ad-4e2f-e711-8101-5065f38a4a21)"
}

您必须以某种方式告诉您要绑定哪个对象类型,因为 aboutobjectid 有多种类型,并且每种类型都有自己独立的关系(在本例中是 aboutobjectid_account)。您正在尝试将值绑定到一个普通的“Guid”属性(因为“_regardingobjectid_value”是一个“Guid”),但是应该像对主题所做的那样分配这样的属性,所以很简单"_regardingobjectid_value": "08b582ad-4e2f-e711-8101-5065f38a4a21",但这不会像你一样工作不提供实体类型。

于 2017-05-12T13:27:34.457 回答