Sdílet prostřednictvím


association type

Typ přidružení (označovaný také jako asociace) je základním stavebním blokem pro popis relací v modelu Entity Data Model (EDM). V konceptuálním modelu asociace představuje vztah mezi dvěma typy entit (například Customer a Order). V aplikaci představuje instance asociace konkrétní přidružení (například přidružení mezi instancí Customer a instancí Order). Instance přidružení jsou logicky seskupeny v sadě přidružení.

Definice přidružení obsahuje následující informace:

  • Jedinečný název. (Povinné)

  • Dvě přidružení končí, jedno pro každý typ entity v relaci. (Povinné)

    Poznámka:

    Přidružení nemůže představovat vztah mezi více než dvěma typy entit. Přidružení však může definovat vztah sebe sama zadáním stejného typu entity pro každou z jeho přidružení končí.

  • Omezení referenční integrity (Nepovinné)

Každý konec přidružení musí určovat násobnost konce přidružení, která označuje počet instancí typu entity, které mohou být na jednom konci přidružení. Koncová násobnost přidružení může mít hodnotu 1, nula nebo jednu (0,,1) nebo mnoho (*). Instance typu entity na jednom konci přidružení lze získat přístup prostřednictvím navigačních vlastností nebo cizích klíčů, pokud jsou vystaveny u typu entity. Další informace najdete v tématu Entity Data Model: Cizí klíče.

Příklad

Následující diagram znázorňuje koncepční model se dvěma přidruženími: PublishedBy a WrittenBy. Přidružení končí pro PublishedBy přidružení jsou Book typy entit a Publisher typy entit. Násobnost Publisher konce je jedna (1) a násobnost Book konce je mnoho (*), což značí, že vydavatel publikuje mnoho knih a kniha je publikována jedním vydavatelem.

Example model with three entity types

ADO.NET Entity Framework používá jazyk specifický pro doménu (DSL) označovaný jako jazyk CSDL (Conceptual Schema Definition Language) k definování konceptuálních modelů. Následující CSDL definuje PublishedBy přidružení znázorněné v diagramu výše:

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

Viz také