共用方式為


PropertyRef 項目 (CSDL)

概念結構定義語言 (CSDL) 中的 PropertyRef 項目會參考實體類型的屬性,表示屬性將執行下列其中一種角色:

  • 實體索引鍵的一部分 (可判斷識別之實體類型的屬性或屬性集)。 一個或多個 PropertyRef 項目可用來定義實體索引鍵。 如需詳細資訊,請參閱 Key 項目

  • 參考條件約束的相依端點和主要端點。 如需詳細資訊,請參閱 ReferentialConstraint 項目

PropertyRef 只能將 Annotation 項目 (零或多個) 當作子項目。

Ee473439.note(zh-tw,VS.100).gif注意:
Annotation 項目僅能用於應用程式的概念模型,該應用程式的目標必須是 .NET Framework 4 版或以後版本。這類模型的 XML 命名空間是 https://schemas.microsoft.com/ado/2008/09/edm。

適用屬性

以下資料表描述的屬性可套用至 PropertyRef 項目。

屬性名稱 必要

Name

參考屬性的名稱。

Ee473439.note(zh-tw,VS.100).gif注意:
Any number of annotation attributes (custom XML attributes) may be applied to the PropertyRef element.不過,自訂屬性不可屬於任何 XML 命名空間,這是保留供 CSDL 使用。任兩個自訂屬性的完整名稱不能相同。

範例

以下範例定義實體類型 (Book)。 實體索引鍵是透過參考實體類型的 ISBN 屬性來定義。

<EntityType Name="Book">
  <Key>
    <PropertyRef Name="ISBN" />
  </Key>
  <Property Type="String" Name="ISBN" Nullable="false" />
  <Property Type="String" Name="Title" Nullable="false" />
  <Property Type="Decimal" Name="Revision" Nullable="false" Precision="29" Scale="29" />
  <NavigationProperty Name="Publisher" Relationship="BooksModel.PublishedBy"
                      FromRole="Book" ToRole="Publisher" />
  <NavigationProperty Name="Authors" Relationship="BooksModel.WrittenBy"
                      FromRole="Book" ToRole="Author" />
</EntityType>

以下範例使用兩個 PropertyRef 項目來表示兩個屬性 (IdPublisherId),分別是參考條件約束的主要端點和相依端點。

<Association Name="PublishedBy">
  <End Type="BooksModel.Book" Role="Book" Multiplicity="*" >
  </End>
  <End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" />
  <ReferentialConstraint>
    <Principal Role="Publisher">
      <PropertyRef Name="Id" />
    </Principal>
    <Dependent Role="Book">
      <PropertyRef Name="PublisherId" />
    </Dependent>
  </ReferentialConstraint>
</Association>

另請參閱

概念

Entity Framework 概觀
CSDL 規格
Schema 項目 (CSDL)

其他資源

CSDL、SSDL 和 MSL 規格
ADO.NET Entity Data Model Tools
entity key (Entity Data Model)