Microsoft Dataverse 是用作畫布應用程式資料來源的好選擇,因為它支援複雜的資料和安全模型,並允許您建立更自訂的使用者體驗。 Canvas 應用程式可將 Dataverse 作為資料來源與其他 Power Platform 連接器一起使用,以整合多個資料來源,例如 SharePoint 清單、Microsoft Access 資料庫或其他業務應用程式的資料。 Power Apps 不使用連接器與 Dataverse 協同工作。 它直接連接到連接器框架之外的 Dataverse。
提示
本文提供了一個範例情境和一個通用範例架構,以說明如何在畫布應用中使用 Dataverse 作為資料來源。 此結構範例可針對許多不同的案例和產業進行修改。
架構圖表
Workflow
下列步驟說明範例結構圖中顯示的工作流程:
畫布應用程式:畫布應用程式允許使用者管理會議詳細資訊,例如地點和會議的開始和結束時間。 畫布應用程式直接存取 Dataverse 中的資料。 使用者使用 Microsoft Entra ID 向 Power Platform 進行驗證,並使用相同的 ID 存取資料。 Dataverse 中對使用者 Entra ID 的任何限制都會無縫執行。
Dataverse 資料來源:畫布應用程式使用 Dataverse 作為資料來源。 它允許您存取關係資料模型,其中表及其關係隨時可用。 內建選項集功能意味著您不必建立複雜的查找和連接。 由於 Power Apps 直接連接到 Dataverse,因此效能通常也很好。
Dataverse 表:在此範例中,Dataverse 表會儲存有關在某個會場舉辦的會議的資料。 這些表使用一對多和多對多關係相互關聯。 Dataverse 安全角色與應用程式使用者的角色一致。 可以在 Dataverse 層級實現邏輯來計算和匯總值、強制執行域值以及自動化資料操作。
元件
Power Platform 環境:包含實現使用者體驗的 Power Platform 資源。
Power Apps:實現解決方案的使用者體驗。 開發者可以透過新增 Dataverse 資料表作為應用程式資料來源來使用 Dataverse 建立畫布應用程式。
Dataverse 連接器:允許您存取分層資料模型,其中表及其關係隨時可用,而無需建立複雜的查找和連接來擷取相關表。 該連接器還繞過了傳統的連接器基礎設施並直接呼叫 Dataverse 後端,從而提高了效能。
案例詳細資料
Power Apps 可以輕鬆地為儲存在 Microsoft Dataverse 中的資料建立自訂使用者體驗。 模型導向的應用程式非常適合注重表單而非資料的情境。 畫布應用最適合需要更靈活地自訂版面配置的情境。
當您需要同時提供來自 Dataverse 和其他來源的資料存取時,此範例中的架構很有用。 在這些情境中,應用程式充當整合器,為使用者提供來自多個來源的單一資料檢視。
考量因素
這些考慮因素體現了 Power Platform Well-Architected 的支柱,這是一套提高工作負載品質的指導原則。 如需進一步了解,請參閱 Microsoft Power Platform Well-Architected。
可靠性
設計您的工作負載以避免不必要的複雜性:Dataverse 的內建抽象和功能可協助您避免傳統資料庫解決方案可能需要的不必要的複雜性。 例如,Dataverse 支援內建關係、智慧型資料類型、選項集和安全模型。
安全性
建立有意的分段和邊界:對應用程式生命週期階段使用單獨的 Power Platform 環境,並確保只有正確的使用者才能存取每個階段以支援分段策略。
卓越營運
採用安全的部署實務:使用管線等自動化部署流程,標準化對畫布應用程式的任何變更的部署。 僅在測試變更後才將應用程式部署到生產環境。
效能效益
設計以滿足效能要求:評估您的解決方案效能和資料量要求,以確保您的 Dataverse 表設計是合適的。 評估應包括如何存取資料以及評估您的應用程式如何將操作委託給 Dataverse。 搜尋和篩選資料時請注意委派限制。這些限制記錄在了解畫布應用中的委派中,在為您的應用選擇正確的資料來源時應考慮這些限制。
最佳化邏輯:預設情況下,使用 Dataverse 的畫布應用程式會使用 Power Fx 實作邏輯,這可能會導致與 Dataverse 進行多次互動或在多個應用程式中重複邏輯。 每個操作都是獨立的,並且不作為原子事務來處理。 例如,如果應用程式建立了 Venue 行但無法建立工作階段,則 Venue 行將保留。 Dataverse 支援實作可在 Dataverse 表事件上呼叫的邏輯。 例如,建立一行。 它還支援使用 Dataverse 自訂 API 或 Dataverse 功能中的函數按需呼叫邏輯的概念。 對於這兩種方法,邏輯執行的工作都在事務中。 Dataverse 資料中完成的所有工作要嘛提交,要嘛復原。 在我們先前的例子中,錯誤發生後,Venue 行將不會保留。 透過整合這些方法,可以確保作為組合工作單元成功完成並集中可重複使用邏輯,從而最佳化某些情境中的邏輯。
體驗最佳化
效率設計:畫布應用程式允許使用者存取 Dataverse 表之外的其他資料來源,而無需與多個單獨的應用程式進行互動,從而提高效率並提供更好的體驗。 但是,要避免為了建立應用程式而建立應用程式——應用程式應該為使用者提供一定的效率,或比使用模型導向的應用程式體驗提供其他架構優勢。
投稿人
Microsoft 維護此文章。 以下貢獻者撰寫了這篇文章。
主要作者:
- Mehdi Slaoui Andaloussi,首席工程經理