extremidade de associação
Uma extremidade de associação identifica o tipo de entidade na 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. Termina de associação são definidas como parte de uma associação; uma associação deve ter exatamente duas termina de associação. As propriedades de navegação permitem a navegação de uma extremidade da associação para a outra.
Uma definição de fim de associação contém as informações a seguir:
Um dos tipos de entidade envolvidos na associação. (Obrigatória)
Observação
Para uma associação determinada, o tipo de entidade especificada para cada o final da associação pode ser o mesmo. Isso cria uma dica associação.
Uma multiplicidade de extremidades de associação que indica o número de instâncias de tipo de entidade que podem estar nessa extremidade. Uma multiplicidade de extremidades de associação pode ter um valor igual a um (1), a zero ou a um (0..1) ou a muitos (*).
Um nome para o final da associação. (Opcional)
Informações sobre as operações que são executadas no final da associação, como em cascata exclusão. (Opcional)
Exemplo
O diagrama a seguir mostra um modelo conceitual com duas associações: PublishedBy
e WrittenBy
. Terminar a associação para associação de PublishedBy
são os tipos de entidade de Book
e de Publisher
. A multiplicidade do final de Publisher
é um (1) e a multiplicidade do final de Book
é muitas (*), indicando que publica um editor muitos livros e um livro é publicado por um editor.
O Entity Framework do ADO.NET usa uma DSL (linguagem específica de domínio) chamada CSDL (linguagem de definição de esquema conceitual) para definir modelos conceituais. CSDL a seguir define a associação de PublishedBy
mostrada no diagrama anterior. Observe que o tipo, nome, e a multiplicidade de cada o final da associação são especificados por atributos XML ( Type
, Role
, e atributos de Multiplicity
, respectivamente). Opcional informações sobre as operações executadas em uma extremidade é especificado em um elemento XML (o elemento de OnDelete
). Nesse caso, se um editor é excluído, é para todos livros associados.
<Association Name="PublishedBy">
<End Type="BooksModel.Book" Role="Book" Multiplicity="*" />
<End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" >
<OnDelete Action="Cascade" />
</End>
</Association>