共用方式為


使用 Web API 建立和取消實體的關聯

 

發行︰ 2017年1月

適用於: Dynamics 365 (online)、Dynamics 365 (on-premises)、Dynamics CRM 2016、Dynamics CRM Online

有幾種方法可建立和取消實體的關聯。 套用的方法取決於您要建立或更新實體,以及您是在被參考的實體或主動參考的實體內容中進行操作。

本主題內容

新增集合值導覽屬性的參考

移除實體參考

變更單一值導覽屬性中的參考。

在建立時關聯實體

在更新時關聯實體

新增集合值導覽屬性的參考

下列範例顯示如何將 opportunityid 值為 00000000-0000-0000-0000-000000000001 的現有商機實體,與 accountid 值為 00000000-0000-0000-0000-000000000002 的客戶實體的集合值 opportunity_customer_accounts 導覽屬性建立關聯。 這是 1:N 關聯,但是您可以對 N:N 關聯執行相同的作業。

  • 要求

    POST cc_WebAPI_ServiceURI/accounts(00000000-0000-0000-0000-000000000002)/opportunity_customer_accounts/$ref HTTP/1.1 
    Content-Type: application/json 
    Accept: application/json 
    OData-MaxVersion: 4.0 
    OData-Version: 4.0
    
    {
    "@odata.id":"cc_WebAPI_ServiceURI/opportunities(00000000-0000-0000-0000-000000000001)"
    }
    
  • 回覆

    HTTP/1.1 204 No Content
    OData-Version: 4.0
    

移除實體參考

使用 DELETE 要求移除實體的參考。 執行的方法不同,取決於您要參考集合值導覽屬性或單一值導覽屬性。

  • 要求
    對於集合值導覽屬性,請使用下列。

    DELETE cc_WebAPI_ServiceURI/accounts(00000000-0000-0000-0000-000000000002)/opportunity_customer_accounts/$ref?$id=cc_WebAPI_ServiceURI/opportunities(00000000-0000-0000-0000-000000000001) HTTP/1.1
    Accept: application/json
    OData-MaxVersion: 4.0
    OData-Version: 4.0
    

    或者,使用此項。

    DELETE cc_WebAPI_ServiceURI/accounts(00000000-0000-0000-0000-000000000002)/opportunity_customer_accounts(00000000-0000-0000-0000-000000000001)/$ref HTTP/1.1
    Accept: application/json
    OData-MaxVersion: 4.0
    OData-Version: 4.0
    
  • 要求
    對於單一值導覽屬性,移除 $id 查詢字串參數。

    DELETE cc_WebAPI_ServiceURI/opportunities(00000000-0000-0000-0000-000000000001)/customerid_account/$ref HTTP/1.1
    Accept: application/json
    OData-MaxVersion: 4.0
    OData-Version: 4.0
    
  • 回覆
    不論哪一種方式,成功回覆的狀態都是 204。

    HTTP/1.1 204 No Content
    OData-Version: 4.0
    

變更單一值導覽屬性中的參考。

您可以建立實體關聯,藉由設定單一值導覽屬性的值,使用下列模式的 PUT 要求。

  • 要求

    PUT cc_WebAPI_ServiceURI/opportunities(00000000-0000-0000-0000-000000000001)/customerid_account/$ref HTTP/1.1
    Content-Type: application/json
    Accept: application/json
    OData-MaxVersion: 4.0
    OData-Version: 4.0
    
    {
     "@odata.id":"cc_WebAPI_ServiceURI/accounts(00000000-0000-0000-0000-000000000002)"
    }
    
  • 回覆

    HTTP/1.1 204 No Content
    OData-Version: 4.0
    

在建立時關聯實體

在單一作業中建立相關實體中所述,新實體可以使用 深層插入建立關聯。

在更新時關聯實體

您可以在更新時使用基本更新中所述的相同訊息建立實體關欄,但您必須使用 @odata.bind 註解設定單一值導覽屬性的值。 下列範例會變更與商機關聯的客戶,使用 customerid_account 單一值導覽屬性。

  • 要求

    PATCH cc_WebAPI_ServiceURI/opportunities(00000000-0000-0000-0000-000000000001) HTTP/1.1
    Content-Type: application/json
    Accept: application/json
    OData-MaxVersion: 4.0
    OData-Version: 4.0
    
    {
     "customerid_account@odata.bind":"cc_WebAPI_ServiceURI/accounts(00000000-0000-0000-0000-000000000002)"
    }
    
  • 回覆

    HTTP/1.1 204 No Content
    OData-Version: 4.0
    

另請參閱

Web API 基本作業範例 (C#)
Web API 基本作業範例 (用戶端 JavaScript)
使用 Web API 執行作業
撰寫 HTTP 要求並處理錯誤
使用 Web API 查詢資料
使用 Web API,建立實體
使用 Web API 擷取實體
使用 Web API 更新和刪除實體
使用 Web API 功能
使用 Web API 動作
使用 Web API,執行批次作業
使用 Web API 模擬其他使用者
使用 Web API 執行條件運算

Microsoft Dynamics 365

© 2017 Microsoft. 著作權所有,並保留一切權利。 著作權