Partilhar via


propriedade de chave estrangeira

Uma propriedade de chave estrangeira no Modelo de Dados de Entidade (EDM) é uma propriedade de tipo primitivo (ou um conjunto de propriedades de tipo primitivo) em um tipo de entidade que contém a chave de entidade de outro tipo de entidade.

Uma propriedade de chave estrangeira é análoga a uma coluna de chave estrangeira em um banco de dados relacional. Da mesma forma que colunas de chave estrangeira são usadas em um banco de dados relacional para criar relações entre linhas em tabelas, propriedades de chave estrangeira em um modelo conceitual são usadas para estabelecer associações entre tipos de entidade. Uma restrição de integridade referencial é usada para definir uma associação entre dois tipos de entidade quando um dos tipos tem uma propriedade de chave estrangeira.

Exemplo

O diagrama abaixo mostra um modelo conceitual com três tipos de entidade: Book, Publisher, e Author. O Book tipo de entidade tem uma propriedade, PublisherId, que faz referência à chave de entidade do Publisher tipo de entidade quando você define uma restrição de integridade referencial na PublishedBy associação.

RefConstraintModel

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 a seguir usa a propriedade PublisherId foreign key para definir uma restrição de integridade referencial na PublishedBy associação mostrada no modelo conceitual mostrado acima.

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

Consulte também