Dynamics API 带有 UUID 引用属性的联系人创建错误

问题描述 投票:0回答:1

我有一个 Dynamics CRM 实例,最初通过 Postman 成功访问该实例。 这是 v9.0

我有一个 POST 请求,该请求在以下位置创建新联系人:/api/data/v9.0/contacts

{
    "customertypecode": 127840004,
    "xx_contractorstatus": 127840000,
    "firstname": "Wallie",
    "lastname": "Worker1-7",
    "fullname": "Wallie Worker",
    "emailaddress1": "[email protected]"
}

我还有一个自定义国籍列表:/api/data/v9.0/xx_nationalities xx_nationalities 的结构是:

{
    "@odata.context": "https://xxdev.api.[HIDDEN].dynamics.com/api/data/v9.0/$metadata#xx_nationalities",
    "value": [
        {
            "@odata.etag": "W/\"35347625\"",
            "_organizationid_value": "6b47908f-b289-4601-b80c-59667d32deda",
            "xx_sharecoderequired": true,
            "xx_nationalityid": "297db2c4-15a3-ed11-aad1-0022484257f7",
            "xx_name": "Afghan",
            "xx_wrsregistrationrequired": false,
            "xx_visarequired": true,
            "statuscode": 1,
            "importsequencenumber": 20,
            "_createdby_value": "2c738c48-4115-ec11-b6e6-002248412237",
            "modifiedon": "2023-02-02T16:22:38Z",
            "xx_brprequired": true,
            "_modifiedby_value": "2c738c48-4115-ec11-b6e6-002248412237",
            "versionnumber": 35347625,
            "createdon": "2023-02-02T16:22:38Z",
            "statecode": 0,
            "overriddencreatedon": null,
            "_modifiedonbehalfby_value": null,
            "xx_nationalityfullname": null,
            "utcconversiontimezonecode": null,
            "_createdonbehalfby_value": null,
            "xx_iseu": null,
            "timezoneruleversionnumber": null
        }
    ]
}

我需要在创建联系人时为联系人附加国籍,但出现错误。当 xx_nationality 在 Contact GET 中返回时,它被命名为:

"_xx_nationality_value": "5f7db2c4-15a3-ed11-aad1-0022484257f7"

我尝试直接返回值,使用id,使用@odata.bind,使用实体包装和with。 / 值中不带斜杠,属性中不带下划线。但似乎没有任何作用。

"_xx_nationality_value": "5f7db2c4-15a3-ed11-aad1-0022484257f7"

错误:CRM不支持直接更新实体引用属性,请改用导航属性

"[email protected]": "/xx_nationalities(5f7db2c4-15a3-ed11-aad1-0022484257f7)"

"[email protected]": "/xx_nationalities(5f7db2c4-15a3-ed11-aad1-0022484257f7)"

"[email protected]": "xx_nationalities(5f7db2c4-15a3-ed11-aad1-0022484257f7)"

"[email protected]": "/xx_nationalities(5f7db2c4-15a3-ed11-aad1-0022484257f7)"

错误:Microsoft.OData.ODataException:未声明的属性“_xx_nationalityid_nationalities”,其在有效负载中仅具有属性注释,但在有效负载中未找到属性值

这似乎是可能的,而且可能非常明显,但这是我们第一次接触 CRM,我们在文档中找不到解决方案,不幸的是我们无法下载 /api/data/v9.0 /$元数据文件对于浏览器或 Postman 来说太大了。

postman dynamics-crm microsoft-dynamics
1个回答
0
投票

您不能将 XrmToolBox 与 MetadataBrowser 插件一起使用来仅获取实体的元数据吗? 然后您应该能够检查正确的属性名称。

© www.soinside.com 2019 - 2024. All rights reserved.