分享方式:


使用 OData 端點搭配 Web 資源

 

發佈日期: 2016年11月

適用對象: Dynamics CRM 2015

具有 Web 資源的 OData 端點提供了處理 Microsoft Dynamics CRM 2015 和 Microsoft Dynamics CRM Online 2015 更新 資料的替代介面。 您可以使用 OData 端點,透過以統一資源識別項 (URI) 為基礎的服務來執行 HTTP 要求。

本主題內容

什麼是 OData

OData 的 Microsoft Dynamics CRM 實作

產生程式碼的協力廠商工具

什麼是 OData

OData 端點是使用開放資料通訊協定。 這項通訊協定會實作 "RESTful" 設計模式。 REST 代表 Representational State Transfer (代表性狀態傳輸)。REST 是一種軟體架構風格,其中每一種資源都會使用唯一的 URI 定址。 在 Microsoft Dynamics 365 中,資源可以是實體集合或記錄。

REST 採用與網際網路相同的運作方式。 您會使用 HTTP 動詞像是 GETPOSTMERGEDELETE 與資源進行互動。 有多種程式庫可用來處理 HTTP 要求和回覆。REST 提供了標準界面,讓您搭配任何程式設計語言使用。REST 可用於同步或非同步作業處理。 由於 REST 能夠執行非同步作業,因此相當適合 Microsoft Dynamics CRM 2015 和 Microsoft Dynamics CRM Online 2015 更新 中所使用的 Web 資源和指令碼。

OData 的 Microsoft Dynamics CRM 實作

Microsoft Dynamics CRM 2015 和 Microsoft Dynamics CRM Online 2015 更新 使用 Windows Communication Foundation (WCF) 資料服務架構提供以 REST 資料服務為基礎的 開放資料通訊協定 (OData) 端點。 這個端點稱為Organization Data Service。 在 Microsoft Dynamics 365 中,服務的根 URI 為:

[Your Organization Root URL]/xrmservices/2011/organizationdata.svc

OData 使用 ATOM 或 JavaScript 物件標記法 (JSON) 傳送和接收資料。ATOM 是 XML 架構格式,通常用於 RSS 摘要。JSON 是文字格式,可用於 JavaScript 物件序列化。

為了提供與 Microsoft Dynamics 365 中所使用實體相同的一組 URIs,Entity Data Model (EDM) 會以「實體類型」的記錄以及記錄之間的關聯做為組織資料的方式。

OData Entity Data Model

Microsoft Dynamics 365 EDM 將在 OData Service Metadata 文件中說明,該文件位於下列路徑:

[Your Organization Root URL]/xrmservices/2011/organizationdata.svc/$metadata

XML 文件利用概念結構定義語言 (CSDL) 描述可用的資料。 您將下載這份文件,並且在使用 Managed 程式碼時用它來產生具類型的類別,或是在使用 JavaScript 時做為可用物件的參考。

限制

OData 端點提供了 SOAP 端點的替代方式,但目前尚有一些限制。

  • 只能在實體記錄上執行建立、擷取、更新和刪除動作。

    • 無法執行需要 Execute 方法的訊息。

    • 可以使用導覽屬性執行關聯和取消關聯動作。

  • OData 通訊協定未完整實作。 某些系統查詢選項無法使用。
    如需詳細資訊,請參閱使用 OData 端點的 OData 系統查詢選項

  • 您無法對自訂實體、屬性或撰寫程式碼時不存在的關聯使用晚期繫結搭配 Managed 程式碼。
    使用 Managed 程式碼進行程式設計時,您通常會使用 WCF 資料服務用戶端資料服務類別。 這些類別允許早期繫結,因此您可以在設計階段取得強類型類別。 您只能使用產生類別時系統中所定義的實體。 這表示,您無法使用晚期繫結處理產生時未包含在 WCF 資料服務用戶端資料服務類別中的自訂實體、屬性或關聯。

產生程式碼的協力廠商工具

使用 Microsoft Dynamics 365 的開發人員社群已經建立一些工具,示範 OData 端點如何運作,而且會產生程式碼供您使用。 下列工具提供功能,可產生程式碼以處理使用 OData 端點 Dynamics 365 資料。

  • CRM REST 建立器
    使用此工具建立要求,以使用各種 JavaScript 程式庫擷取資料和執行作業。

    感謝 Microsoft Dynamics 365 MVP Jason Lattimer 建置此工具。

  • OData 查詢設計工具
    包括在 Dynamics XRM 工具專案中,OData 查詢設計工具可建立查詢,以擷取使用端點的 OData 資料。

    感謝 Microsoft Dynamics 365 MVP Rhett Clinton 建置此工具與其他工具。

另請參閱

在 Web 資源中使用 Web 服務資料 (OData 和現代應用程式 SOAP 端點)
針對具有 Web 資源的現代應用程式使用現代應用程式 SOAP 端點
Microsoft Dynamics CRM 2015 的 Web 資源
使用 Microsoft Dynamics CRM 2015 開發人員資源頁面下載端點
使用 OData 端點查詢 Microsoft Dynamics CRM 2015 資料
使用 OData 端點執行基礎資料作業
使用 OData 端點搭配 AJAX 和 JScript Web 資源
使用 OData 端點執行其他資料作業
範例:使用 OData 端點和 JavaScript 及 jQuery,建立、擷取、更新及刪除
範例:使用 OData 端點和 JavaScript 建立、擷取、更新及刪除
範例:OData 端點 JQuery 連絡人編輯器
開放資料通訊協定概觀
OData SDK
技術文章:使用選項組選項與 REST 端點 - JScript

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