Partilhar via


fim da associação

Uma extremidade de associação identifica o tipo de entidade em uma extremidade de uma associação e o número de instâncias de tipo de entidade que podem existir nessa extremidade de uma associação. Os pontos de associação são definidos como parte de uma associação; uma associação deve ter exatamente dois pontos de associação. As propriedades de navegação permitem a navegação de uma extremidade de associação para a outra.

Uma definição de fim de associação contém as seguintes informações:

  • Um dos tipos de entidades envolvidas na associação. (Necessário)

    Observação

    Para uma determinada associação, o tipo de entidade especificado para cada extremidade de associação pode ser o mesmo. Isso cria uma autoassociação.

  • Uma multiplicidade de fim de associação que indica o número de instâncias de tipo de entidade que podem estar em uma extremidade da associação. Uma multiplicidade final de associação pode ter um valor de um (1), zero ou um (0..1), ou muitos (*).

  • Um nome para o fim da associação. (Opcional)

  • Informações sobre operações que são executadas na extremidade da associação, como eliminação em cascata. (Opcional)

Exemplo

O diagrama abaixo mostra um modelo conceitual com duas associações: PublishedBy e WrittenBy. As extremidades da associação para a PublishedBy associação são os tipos de entidade Book e Publisher. A multiplicidade da extremidade Publisher é um (1) e a multiplicidade da extremidade Book é muitos (*), indicando que uma editora publica muitos livros e um livro é publicado por uma editora.

Modelo de exemplo com três tipos de entidade

O ADO.NET Entity Framework usa uma linguagem específica de domínio (DSL) chamada linguagem de definição de esquema conceitual (CSDL) para definir modelos conceituais. A CSDL abaixo define a associação PublishedBy mostrada no diagrama acima. Observe que o tipo, o nome e a multiplicidade de cada extremidade de associação são especificados por atributos XML (o Type, Rolee Multiplicity atributos, respectivamente). Informações opcionais sobre operações executadas num extremo são especificadas em um elemento XML (elemento OnDelete). Neste caso, se um editor for excluído, todos os livros associados também o serão.

  <Association Name="PublishedBy">
    <End Type="BooksModel.Book" Role="Book" Multiplicity="*" />
    <End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" >
  <OnDelete Action="Cascade" />
</End>
  </Association>

Ver também