組織您的解決方案
在您建立解決方案之前,請先花一些時間進行規劃。 例如,考量要發行多少個解決方案,以及解決方案是否要共用元件。
另外還包括判斷您建構解決方案系列所需的 Microsoft Dataverse 環境數目。 您可以對本文描述的大部分原則使用單一環境。 不過,如果您決定只要一個環境,但之後發現需要更多環境,那麼變更解決方案可能沒那麼容易,尤其是在已有使用者安裝它們的情況下。 使用多個環境雖然會增加複雜性,但是可以提供更大的彈性。
下列各節描述管理解決方案的不同策略 (依簡單到複雜排序)。
單一解決方案
建立解決方案就表示您建立了一組自訂工作集。 如此就可讓您更容易找到自訂的項目。
當您只想建立單一受管理解決方案時,建議您採用這個方式。 若您認為未來可能需要分割解決方案,請考慮使用多個解決方案。
多個解決方案
如果您有兩個不相關且未共用元件的解決方案,則最直接的方式就是建立兩個未受管理的解決方案。
Note
在解決方案中經常會修改應用程式功能區或網站地圖。 如果這兩個解決方案都修改了這些解決方案元件,表示這些是共用元件。 請參閱下列章節,了解如何使用共用元件。
多個解決方案分層和相依性
當您將不同的解決方案匯入目標環境中時,通常會在要匯入解決方案下方的現有解決方案位置建立層級。 在解決方案層級方面,最重要的是不具有跨解決方案的相依性。 應避免在同一環境中擁有多個使用相同未受管理元件的解決方案。 對於資料表尤其如此。
在沒有交叉相依性風險的情況下,依元件類型細分您的解決方案。 例如,一個解決方案包含所有資料表、另一個解決方案包含所有外掛程式,第三個解決方案則包含所有流程。 這些不同的元件不具有跨解決方案相依性的風險。 因此,在同一環境中以這種方式形成多個解決方案是安全的。
在同一環境中,不可有兩種皆包含資料表的不同解決方案。 這是因為資料表之間的單一關聯通常會有風險,這會建立跨解決方案的相依性,並在稍後導致目標環境中的解決方案升級或刪除問題。
當您設計解決方案層級並想要讓應用程式具有結構化的方法時,您應該從基礎層開始。 稍後,您可以匯入將駐留在基礎層頂端的其他解決方案。 接著,您在頂端會有基礎層和延伸層,以延伸該基礎層。
當您以這種方式管理專案時,建議您為每層使用不同的環境。 使用這些步驟建立您的解決方案分層。
在使用以下步驟建立解決方案之前,請先在您的環境中為所有解決方案使用單一發行者。 其他資訊:解決方案發行者
在「基礎」環境中,您的基礎解決方案包含來自該環境的未受管理資料表,而不包含其他資料表。 然後,您可以將此解決方案匯出為受管理的解決方案。
您為擴充功能或「應用程式」層設定了第二個環境,該環境稍後會位於基礎層頂端。
您可以將受管理的基礎層匯入應用程式層環境,並建立應用程式層的未受管理解決方案。
現在您可以將其他資料表、資料行、資料表關聯等新增至應用程式解決方案中,以延伸資料模型。 然後,將應用程式解決方案匯出為受管理的解決方案。 請注意,應用程式解決方案會在基礎層解決方案上具有相依性。
在您的生產環境中,您可以匯入受管理的基礎層,然後匯入受管理的應用程式層。 這會在環境中建立兩個受管理層,這兩個受管理解決方案之間具有明確的相依性。 以這種方式管理多個解決方案不會產生跨解決方案的相依性,這可能會造成解決方案維護問題,例如在需要時移除頂層。
重複此分割模式,以擁有需要維護的多個不同解決方案。 雖然我們建議您儘量維持少量的解決方案,以確保您的解決方案分層易於管理。