Поделиться через


конечная точка набора ассоциаций

Конец набора ассоциаций определяет тип сущности и набор сущностей в конце набора ассоциаций. Конечные точки набора ассоциаций определяются как часть набора ассоциаций; набор ассоциаций должен иметь ровно две конечные точки.

Определение конечной точки набора ассоциаций содержит следующую информацию.

  • Один из типов сущностей, участвующих в наборе ассоциаций. (обязательно)

  • Набор сущностей для типа сущностей, участвующих в наборе ассоциаций. (обязательно)

Пример

На приведенной ниже схеме показана концептуальная модель с двумя ассоциациями: WrittenBy и PublishedBy.

Example model with three entity types

На следующей схеме показаны один набор ассоциаций (PublishedBy и Books) и два набора сущностей (Publishers) на основе приведенной выше концептуальной модели. Конечные точки набора ассоциаций - это наборы сущностей Books и Publishers. Bi в наборе Books сущностей представляет экземпляр типа сущности Book во время выполнения. Аналогичным образом Pj представляет Publisher экземпляр в наборе Publishers сущностей. BiPj представляет экземпляр ассоциации PublishedBy в наборе ассоциаций PublishedBy .

Screenshot that shows a Sets example.

Платформа entity Framework ADO.NET использует DSL с именем языка определения концептуальной схемы (CSDL) для определения концептуальных моделей. Далее на языке CSDL определяется контейнер сущностей с одним набором ассоциаций для каждой ассоциации на приведенной выше схеме. Обратите внимание, что конечные точки набора ассоциаций определяются как часть каждого определения набора ассоциаций.

<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>

См. также