Megosztás a következőn keresztül:


hivatkozási integritási korlátozás

Az Entity Data Model (EDM) hivatkozási integritási kényszere hasonló a relációs adatbázisok hivatkozási integritási kényszeréhez. Ugyanúgy, ahogyan egy adatbázistábla oszlopai (vagy oszlopai) hivatkozhatnak egy másik tábla elsődleges kulcsára, egy entitástípus tulajdonsága (vagy tulajdonságai) hivatkozhatnak egy másik entitástípus entitáskulcsára. A hivatkozott entitástípus neve a kényszer fő vége . Az egyszerű végpontra hivatkozó entitástípust a kényszer függő végének nevezzük.

A hivatkozási integritási korlátozás két entitástípus közötti társítás részeként van definiálva. A hivatkozási integritási korlátozás definíciója a következő információkat határozza meg:

  • A kényszer fő vége. (Olyan entitástípus, amelynek entitáskulcsára a függő vég hivatkozik.)

  • Az egyszerű vég entitáskulcsa.

  • A kényszer függő vége. (Olyan entitástípus, amely rendelkezik olyan tulajdonsággal vagy tulajdonsággal, amely az egyszerű végpont entitáskulcsára hivatkozik.)

  • A függő vég hivatkozási tulajdonsága vagy tulajdonságai.

Az EDM-ben a hivatkozási integritási korlátozások célja annak biztosítása, hogy az érvényes társítások mindig létezhessenek. További információ: idegenkulcs-tulajdonság.

Példa

Az alábbi ábrán egy fogalmi modell látható két társítással: WrittenBy és PublishedBy. Az Book entitástípusnak van egy tulajdonsága, PublisherIdamely az entitástípus entitáskulcsára Publisher hivatkozik, amikor hivatkozási integritási korlátozást határoz meg a PublishedBy társításon.

RefConstraintModel

A ADO.NET Entity Framework egy tartományspecifikus nyelvet (DSL) használ, amelyet fogalmi sémadefiníciós nyelvnek (CSDL) hívunk a fogalmi modellek meghatározásához. A következő CSDL egy hivatkozási integritási korlátozást határoz meg a PublishedBy fenti fogalmi modellben látható társításra.

<Association Name="PublishedBy">
  <End Type="BooksModel.Book" Role="Book" Multiplicity="*" >
  </End>
  <End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" />
  <ReferentialConstraint>
    <Principal Role="Publisher">
      <PropertyRef Name="Id" />
    </Principal>
    <Dependent Role="Book">
      <PropertyRef Name="PublisherId" />
    </Dependent>
  </ReferentialConstraint>
</Association>

Lásd még