Share via


IForeignKey Rozhraní

Definice

Představuje relaci, kde cizí klíč složený z vlastností závislého typu entity odkazuje na odpovídající primární nebo alternativní klíč typu hlavní entity.

public interface IForeignKey : Microsoft.EntityFrameworkCore.Infrastructure.IAnnotatable
public interface IForeignKey : Microsoft.EntityFrameworkCore.Infrastructure.IAnnotatable, Microsoft.EntityFrameworkCore.Metadata.IReadOnlyForeignKey
type IForeignKey = interface
    interface IAnnotatable
type IForeignKey = interface
    interface IReadOnlyForeignKey
    interface IReadOnlyAnnotatable
    interface IAnnotatable
Public Interface IForeignKey
Implements IAnnotatable
Public Interface IForeignKey
Implements IAnnotatable, IReadOnlyForeignKey
Odvozené
Implementuje

Poznámky

Další informace a příklady najdete v tématu Modelování typů entit a relací .

Vlastnosti

DeclaringEntityType

Získá závislý typ entity. To se může lišit od typu, který je definován v případě, že Properties je relace definována odvozeným typem v hierarchii dědičnosti (protože vlastnosti mohou být definovány na základním typu).

DeleteBehavior

Získá hodnotu označující, jak je operace odstranění použita na závislé entity v relaci při odstranění objektu zabezpečení nebo relace je přerušena.

DependentToPrincipal

Získá navigační vlastnost závislého typu entity, která odkazuje na hlavní entitu.

IsOwnership

Získá nebo nastaví hodnotu označující, zda tato relace definuje vlastnictví. Pokud true, musí být závislá entita vždy přístupná prostřednictvím navigace z hlavní entity.

IsRequired

Získá hodnotu označující, zda je požadována entita objektu zabezpečení. Pokud true, musí být závislá entita vždy přiřazena k platné hlavní entitě.

IsRequiredDependent

Získá hodnotu označující, zda je závislá entita povinná. Pokud true, musí mít hlavní entita vždy přiřazenou platnou závislou entitu.

IsUnique

Získá hodnotu označující, zda jsou hodnoty přiřazené vlastnosti cizího klíče jedinečné.

Item[String]

Získá hodnotu poznámky se zadaným názvem, vrátí null se, pokud neexistuje.

(Zděděno od IReadOnlyAnnotatable)
PrincipalEntityType

Získá typ hlavní entity, na který tato relace cílí. To se může lišit od typu definovaného podle toho, PrincipalKey kdy relace cílí na odvozený typ v hierarchii dědičnosti (protože klíč je definován na základním typu hierarchie).

PrincipalKey

Získá primární nebo alternativní klíč, na který relace cílí.

PrincipalToDependent

Získá navigační vlastnost typu hlavní entity, která odkazuje na závislou entitu.

Properties

Získá vlastnosti cizího klíče v závislé entitě.

Metody

AddRuntimeAnnotation(String, Object)

Přidá k tomuto objektu poznámku za běhu. Vyvolá, pokud již existuje poznámka se zadaným názvem.

(Zděděno od IAnnotatable)
AnnotationsToDebugString(Int32)

Získá ladicí řetězec pro všechny poznámky deklarované v objektu.

(Zděděno od IReadOnlyAnnotatable)
FindAnnotation(String)

Získá anotaci s daným názvem a vrátí null , pokud neexistuje.

(Zděděno od IReadOnlyAnnotatable)
FindRuntimeAnnotation(String)

Získá poznámku modulu runtime se zadaným názvem a vrátí null , pokud neexistuje.

(Zděděno od IAnnotatable)
FindRuntimeAnnotationValue(String)

Získá hodnotu poznámky modulu runtime s daným názvem a vrátí null , pokud neexistuje.

(Zděděno od IAnnotatable)
GetAnnotation(String)

Získá anotaci s daným názvem, vyvolá se, pokud neexistuje.

(Zděděno od IReadOnlyAnnotatable)
GetAnnotations()

Získá všechny poznámky aktuální objekt.

(Zděděno od IReadOnlyAnnotatable)
GetDependentKeyValueFactory()

Vytvoří objekt pro hodnoty klíčů na základě hodnot cizího klíče převzatých z různých forem dat entity.

Tuto metodu obvykle používají poskytovatelé databází (a další rozšíření). Obecně se nepoužívá v kódu aplikace.

GetDependentKeyValueFactory<TKey>()

Vytvoří objekt pro hodnoty klíčů na základě hodnot cizího klíče převzatých z různých forem dat entity.

Tuto metodu obvykle používají poskytovatelé databází (a další rozšíření). Obecně se nepoužívá v kódu aplikace.

GetNavigation(Boolean)

Vrátí navigaci přidruženou k tomuto cizímu klíči.

GetOrAddRuntimeAnnotationValue<TValue,TArg>(String, Func<TArg,TValue>, TArg)

Získá hodnotu poznámky modulu runtime s daným názvem a přidá ji, pokud neexistuje.

(Zděděno od IAnnotatable)
GetReferencingSkipNavigations()

Získá všechny přeskočení navigace pomocí tohoto cizího klíče.

GetRelatedEntityType(IReadOnlyEntityType)

Získá typ entity související s danou entitou.

GetRuntimeAnnotations()

Získá všechny poznámky modulu runtime aktuální objekt.

(Zděděno od IAnnotatable)
IsBaseLinking()

Vrátí hodnotu označující, zda je cizí klíč definován v primárním klíči a odkazující na stejný primární klíč.

(Zděděno od IReadOnlyForeignKey)
RemoveRuntimeAnnotation(String)

Odebere z tohoto objektu danou poznámku modulu runtime.

(Zděděno od IAnnotatable)
SetRuntimeAnnotation(String, Object)

Nastaví poznámku modulu runtime uloženou pod daným klíčem. Přepíše existující poznámku, pokud již existuje poznámka se zadaným názvem.

(Zděděno od IAnnotatable)
ToDebugString(MetadataDebugStringOptions, Int32)

Vytvoří čitelné vyjádření daných metadat.

Upozornění: Nespoléhejte na formát vráceného řetězce. Je určen pouze pro ladění a mezi verzemi se může libovolně měnit.

(Zděděno od IReadOnlyForeignKey)

Metody rozšíření

GetDependentKeyValueFactory<TKey>(IForeignKey)

Vytvoří objekt pro hodnoty klíčů na základě hodnot cizího klíče převzatých z různých forem dat entity.

Tuto metodu obvykle používají poskytovatelé databází (a další rozšíření). Obecně se nepoužívá v kódu aplikace.

GetNavigation(IForeignKey, Boolean)

Vrátí navigaci přidruženou k tomuto cizímu klíči.

GetRelatedEntityType(IForeignKey, IEntityType)

Získá typ entity související s danou entitou.

IsBaseLinking(IForeignKey)

Vrátí hodnotu označující, zda je cizí klíč definován v primárním klíči a odkazující na stejný primární klíč.

ToDebugString(IForeignKey, MetadataDebugStringOptions, Int32)

Vytvoří čitelné vyjádření daných metadat.

Upozornění: Nespoléhejte na formát vráceného řetězce. Je určen pouze pro ladění a mezi verzemi se může libovolně měnit.

AnnotationsToDebugString(IAnnotatable, Int32)

Získá ladicí řetězec pro všechny poznámky deklarované v objektu.

GetAnnotation(IAnnotatable, String)

Získá anotaci s daným názvem, vyvolá se, pokud neexistuje.

FindSharedObjectRootForeignKey(IForeignKey, StoreObjectIdentifier)

Vyhledá první IConventionForeignKey objekt, který je mapován na stejné omezení ve sdíleném objektu podobném tabulce.

Tuto metodu obvykle používají poskytovatelé databází (a další rozšíření). Obecně se nepoužívá v kódu aplikace.

FindSharedObjectRootForeignKey(IReadOnlyForeignKey, StoreObjectIdentifier)

Vyhledá první IForeignKey objekt, který je mapován na stejné omezení ve sdíleném objektu podobném tabulce.

Tuto metodu obvykle používají poskytovatelé databází (a další rozšíření). Obecně se nepoužívá v kódu aplikace.

GetConstraintName(IForeignKey)

Vrátí název omezení cizího klíče.

GetConstraintName(IForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Vrátí název omezení cizího klíče.

GetConstraintName(IReadOnlyForeignKey)

Vrátí název omezení cizího klíče.

GetConstraintName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Vrátí název omezení cizího klíče.

GetDefaultName(IForeignKey)

Vrátí výchozí název omezení, který by se použil pro tento cizí klíč.

GetDefaultName(IForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Vrátí výchozí název omezení, který by se použil pro tento cizí klíč.

GetDefaultName(IReadOnlyForeignKey)

Vrátí výchozí název omezení, který by se použil pro tento cizí klíč.

GetDefaultName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Vrátí výchozí název omezení, který by se použil pro tento cizí klíč.

GetMappedConstraints(IForeignKey)

Získá omezení cizího klíče, na které je cizí klíč mapován.

IsRowInternal(IReadOnlyForeignKey, StoreObjectIdentifier)

Vrátí hodnotu označující, zda je tento cizí klíč mezi dvěma typy entit sdílejícími stejný objekt úložiště podobný tabulce.

Relational(IForeignKey)

Získá relační databáze specifická metadata pro cizí klíč.

GetFluentApiCalls(IForeignKey, IAnnotationCodeGenerator, Boolean)

Získá fluent volání rozhraní API pro konfiguraci cizího klíče.

Sqlite(IForeignKey)

Získá SQLite specifické metadata pro cizí klíč.

SqlServer(IForeignKey)

Získá SQL Server specifická metadata pro cizí klíč.

Platí pro