次の方法で共有


アソシエーション セット End

関連付けセットの末尾は、関連付けセットの末尾にあるエンティティの種類エンティティ セットを識別します。 アソシエーション セットの端は、アソシエーション セットの一部として定義されます。アソシエーション セットには、端が正確に 2 つ必要です。

アソシエーション セットの終了定義には、次の情報が含まれています。

  • 関連付けセットに関係するエンティティ型の 1 つ。 (必須)

  • アソシエーション セットに含まれるエンティティ型のエンティティ セット。 (必須)

次の図は、 WrittenByPublishedByの 2 つの関連付けを持つ概念モデルを示しています。

3 つのエンティティ型を持つモデルの例

次の図は、上記の概念モデルに基づく関連付けセット (PublishedBy) と 2 つのエンティティ セット (BooksPublishers) を示しています。 関連付けセットの末尾は、 Books エンティティ セットと Publishers エンティティ セットです。 Books エンティティ セット内の bi は、実行時にBook エンティティ型のインスタンスを表します。 同様に、Pj は、Publisher エンティティ セット内のPublishers インスタンスを表します。 BiPj は、PublishedBy関連付けセット内のPublishedBy関連付けのインスタンスを表します。

Sets の例を示すスクリーンショット。

ADO.NET Entity Framework では、概念スキーマ定義言語 (CSDL) と呼ばれる DSL を使用して概念モデルを定義します。 次の CSDL では、上の図の関連付けごとに 1 つの関連付けが設定されたエンティティ コンテナーを定義します。 アソシエーション セットの終了は、各アソシエーション セット定義の一部として定義されることに注意してください。

<EntityContainer Name="BooksContainer" >
  <EntitySet Name="Books" EntityType="BooksModel.Book" />
  <EntitySet Name="Publishers" EntityType="BooksModel.Publisher" />
  <EntitySet Name="Authors" EntityType="BooksModel.Author" />
  <AssociationSet Name="PublishedBy" Association="BooksModel.PublishedBy">
    <End Role="Book" EntitySet="Books" />
    <End Role="Publisher" EntitySet="Publishers" />
  </AssociationSet>
  <AssociationSet Name="WrittenBy" Association="BooksModel.WrittenBy">
    <End Role="Book" EntitySet="Books" />
    <End Role="Author" EntitySet="Authors" />
  </AssociationSet>
</EntityContainer>

こちらも参照ください