HOW TO:建立和修改複雜型別 (實體資料模型工具)

本主題描述如何使用 ADO.NET 實體資料模型設計工具 (Entity Designer) 來建立和修改複雜型別。 如需使用複雜型別的詳細資訊,請參閱Complex Type Objects (Entity Framework)

您可以在 Entity Designer 的模型瀏覽器視窗中建立和修改複雜型別。 下列程序假設您有一個在 Entity Designer 中開啟的 .edmx 檔案,並且可看見 [模型瀏覽器] 視窗。

建立複雜型別。

您可以利用下列任何一種方法建立複雜型別。

建立複雜型別

  1. 在 [模型瀏覽器] 中,以滑鼠右鍵按一下 [複雜型別] 資料夾,指向 [加入] ,然後按一下 [複雜型別]。

    新的 [複雜型別] 已加入到帶有預設名稱的資料夾 (如需提供不同名稱的詳細資訊,請參閱下方的「重新命名複雜型別」)。

  2. 將屬性加入至複雜型別。

    如需詳細資訊,請參閱下方的「將屬性加入至複雜型別」。

    -或-

  3. 在 [模型瀏覽器] 中,選取 [複雜型別] 資料夾,然後按下鍵盤上的 [Insert] 鍵。

    含有預設名稱的新屬性隨即會加入到該複雜型別。

  4. 將屬性加入至複雜型別。

    -或-

  5. 在 Entity Designer 介面,選取實體的一或多個屬性 (不含導覽屬性),然後以滑鼠右鍵按一下並選取 [ 重構至新的複雜型別]。

    含有已選取之屬性的新複雜型別隨即會加入至「模型瀏覽器」。 預設名稱會指定給該複雜型別。

    新建立型別的複雜屬性會取代已選取的屬性。 所有屬性對應都會保留。

    -或-

  6. 將函式匯入加入至概念模型,然後按一下 [函式匯入] 對話方塊中的 [建立新複雜型別]。 如需詳細資訊,請參閱 HOW TO:匯入預存程序

重新命名複雜類型

重新命名複雜類型時,此類型的所有參考都會經由專案更新。

您可以利用下列任何一種方法重新命名複雜型別。

重新命名複雜型別

  • 緩慢地按兩下 [模型瀏覽器] 中的 [複雜型別]。

    所選取的名稱會在編輯模式中。

    -或-

  • 以滑鼠右鍵按一下 [模型瀏覽器] 中的 [複雜型別],然後選取 [重新命名]。

    所選取的名稱會在編輯模式中。

    -或-

  • 選取 [模型瀏覽器] 中的 [複雜型別],並按下 F2 鍵。

    所選取的名稱會在編輯模式中。

    -或-

  • 以滑鼠右鍵按一下 [模型瀏覽器] 中的 [複雜型別],然後選取 [ 屬性]。 在 [ 屬性] 視窗中編輯名稱。

將屬性加入至複雜型別

複雜型別屬性可以是純量型別或現有複雜型別。 不過,複雜型別屬性不能有循環參考。 例如,複雜型別 ContactInfo 不能有複雜型別 ContactInfo 的屬性。

您可以利用下列任何一種方法,將屬性加入至複雜型別。

將屬性加入至複雜型別

  • 在 [模型瀏覽器] 中以滑鼠右鍵按一下 [複雜型別],指向 [加入],然後指向 [純量屬性] 或 [複雜屬性],接著選取想要的屬性類型。

    含有預設名稱的新屬性隨即會加入至該複雜型別。

    -或-

  • 以滑鼠右鍵按一下 Entity Designer 介面上的實體屬性,並選取 [複製],然後以滑鼠右鍵按一下 [模型瀏覽器] 的 [複雜型別],接著選取 [貼上]。

    -或-

  • 在 [模型瀏覽器] 中選取 [複雜型別],然後按下鍵盤上的 Insert 鍵。

    含有預設名稱的新純量屬性隨即會加入至該複雜型別。

刪除複雜型別

刪除複雜型別時,是從概念模型中刪除該型別,且所有該型別所有執行個體的對應都會刪除。 但是,該型別的參考不會更新。 例如,如果某實體有 ComplexType1 型別的複雜型別屬性,然後在 [模型瀏覽器] 中刪除 ComplexType1,對應的實體屬性並不會更新。 該模型不會進行驗證,因為它包含一個參考已刪除之複雜型別的實體。 您可以使用 Entity Designer 來更新或刪除已刪除之複雜型別的參考。

您可以使用下列方式刪除複雜型別。

刪除複雜型別

  • 以滑鼠右鍵按一下 [模型瀏覽器] 中的 [複雜類型],然後選取 [刪除]。

    -或-

  • 在 [模型瀏覽器] 中選取 [複雜型別],然後按下鍵盤上的 Delete 鍵。

另請參閱

工作

HOW TO:將複雜型別屬性加入到實體 (實體資料模型工具)
HOW TO:將複雜型別屬性對應到資料表資料行 (實體資料模型工具)。
HOW TO:將函式匯入對應到複雜型別 (實體資料模型工具)

其他資源

Entity Designer 的模組化工作