IForeignKey Interfaccia
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta una relazione in cui una chiave esterna composta da proprietà sul tipo di entità dipendente fa riferimento a una chiave primaria o alternativa corrispondente nel tipo di entità principale.
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
- Derivato
- Implementazioni
Commenti
Per altre informazioni ed esempi, vedere Modellazione di tipi di entità e relazioni .
Proprietà
| Nome | Descrizione |
|---|---|
| DeclaringEntityType |
Ottiene il tipo di entità dipendente. Questo può essere diverso dal tipo Properties definito quando la relazione è definita in un tipo derivato in una gerarchia di ereditarietà , poiché le proprietà possono essere definite in un tipo di base. |
| DeleteBehavior |
Ottiene un valore che indica come viene applicata un'operazione di eliminazione alle entità dipendenti nella relazione quando l'entità viene eliminata o la relazione viene interrotta. |
| DependentToPrincipal |
Ottiene la proprietà di navigazione sul tipo di entità dipendente che punta all'entità principale. |
| IsConstrained |
Ottiene un valore che indica se la relazione è vincolata, supportata da una garanzia ,ad esempio un vincolo di chiave esterna del database, che esiste una chiave principale corrispondente per ogni valore di chiave esterna impostata. Quando |
| IsOwnership |
Ottiene o imposta un valore che indica se questa relazione definisce una proprietà.
Se |
| IsRequired |
Ottiene un valore che indica se l'entità principale è obbligatoria.
Se |
| IsRequiredDependent |
Ottiene un valore che indica se l'entità dipendente è obbligatoria.
Se |
| IsUnique |
Ottiene un valore che indica se i valori assegnati alle proprietà della chiave esterna sono univoci. |
| Item[String] |
Ottiene il valore dell'annotazione con il nome specificato, restituendo |
| PrincipalEntityType |
Ottiene il tipo di entità principale di destinazione di questa relazione. Questo può essere diverso dal tipo PrincipalKey definito quando la relazione è destinata a un tipo derivato in una gerarchia di ereditarietà , poiché la chiave è definita sul tipo di base della gerarchia. |
| PrincipalKey |
Ottiene la chiave primaria o alternativa di destinazione della relazione. |
| PrincipalToDependent |
Ottiene la proprietà di navigazione sul tipo di entità principale che punta all'entità dipendente. |
| Properties |
Ottiene le proprietà della chiave esterna nell'entità dipendente. |
Metodi
| Nome | Descrizione |
|---|---|
| AddRuntimeAnnotation(String, Object) |
Aggiunge un'annotazione di runtime a questo oggetto. Genera un'eccezione se esiste già un'annotazione con il nome specificato. (Ereditato da IAnnotatable) |
| AnnotationsToDebugString(Int32) |
Ottiene la stringa di debug per tutte le annotazioni dichiarate nell'oggetto . (Ereditato da IReadOnlyAnnotatable) |
| FindAnnotation(String) |
Ottiene l'annotazione con il nome specificato, restituendo |
| FindRuntimeAnnotation(String) |
Ottiene l'annotazione di runtime con il nome specificato, restituendo |
| FindRuntimeAnnotationValue(String) |
Ottiene il valore dell'annotazione di runtime con il nome specificato, restituendo |
| GetAnnotation(String) |
Ottiene l'annotazione con il nome specificato, generando se non esiste. (Ereditato da IReadOnlyAnnotatable) |
| GetAnnotations() |
Ottiene tutte le annotazioni sull'oggetto corrente. (Ereditato da IReadOnlyAnnotatable) |
| GetDependentKeyValueFactory() |
Crea una factory per i valori delle chiavi in base ai valori di chiave esterna acquisiti da varie forme di dati di entità. Questo metodo viene in genere usato dai provider di database (e altre estensioni). In genere non viene usato nel codice dell'applicazione. |
| GetDependentKeyValueFactory<TKey>() |
Crea una factory per i valori delle chiavi in base ai valori di chiave esterna acquisiti da varie forme di dati di entità. Questo metodo viene in genere usato dai provider di database (e altre estensioni). In genere non viene usato nel codice dell'applicazione. |
| GetNavigation(Boolean) |
Restituisce una struttura di spostamento associata a questa chiave esterna. |
| GetOrAddRuntimeAnnotationValue<TValue,TArg>(String, Func<TArg,TValue>, TArg) |
Ottiene il valore dell'annotazione di runtime con il nome specificato, aggiungendolo se non esiste. (Ereditato da IAnnotatable) |
| GetReferencingSkipNavigations() |
Ottiene tutti gli spostamenti ignorati utilizzando questa chiave esterna. |
| GetRelatedEntityType(IReadOnlyEntityType) |
Ottiene il tipo di entità correlato a quello specificato. |
| GetRuntimeAnnotations() |
Ottiene tutte le annotazioni di runtime sull'oggetto corrente. (Ereditato da IAnnotatable) |
| IsBaseLinking() |
Restituisce un valore che indica se la chiave esterna è definita nella chiave primaria e punta alla stessa chiave primaria. (Ereditato da IReadOnlyForeignKey) |
| IsEffectivelyRequired() |
Restituisce un valore che indica se è garantito che un valore impostato per questa chiave esterna faccia riferimento a un'entità esistente, ovvero la relazione è obbligatoria (IsRequired) e vincolata (IsConstrained). La query consulta questa opzione per decidere se una navigazione dipendente-a-entità può essere espansa con un inner join (e se tale join può essere risolto); una relazione non vincolata viene sempre considerata come facoltativa anche quando le relative proprietà di chiave esterna non sono nullable. (Ereditato da IReadOnlyForeignKey) |
| RemoveRuntimeAnnotation(String) |
Rimuove l'annotazione di runtime specificata da questo oggetto. (Ereditato da IAnnotatable) |
| SetRuntimeAnnotation(String, Object) |
Imposta l'annotazione di runtime archiviata nella chiave specificata. Sovrascrive l'annotazione esistente se esiste già un'annotazione con il nome specificato. (Ereditato da IAnnotatable) |
| ToDebugString(MetadataDebugStringOptions, Int32) |
Crea una rappresentazione leggibile dei metadati specificati. Avviso: non basarsi sul formato della stringa restituita. È progettato solo per il debug e può cambiare arbitrariamente tra le versioni. (Ereditato da IReadOnlyForeignKey) |
Metodi di estensione
| Nome | Descrizione |
|---|---|
| AnnotationsToDebugString(IAnnotatable, Int32) |
Ottiene la stringa di debug per tutte le annotazioni dichiarate nell'oggetto . |
| FindSharedObjectRootForeignKey(IForeignKey, StoreObjectIdentifier) |
Trova il primo IForeignKey oggetto mappato allo stesso vincolo in un oggetto di tipo tabella condiviso. Questo metodo viene in genere usato dai provider di database (e altre estensioni). In genere non viene usato nel codice dell'applicazione. |
| FindSharedObjectRootForeignKey(IReadOnlyForeignKey, StoreObjectIdentifier) |
Trova il primo IForeignKey oggetto mappato allo stesso vincolo in un oggetto di tipo tabella condiviso. Questo metodo viene in genere usato dai provider di database (e altre estensioni). In genere non viene usato nel codice dell'applicazione. |
| GetAnnotation(IAnnotatable, String) |
Ottiene l'annotazione con il nome specificato, generando se non esiste. |
| GetConstraintName(IForeignKey, StoreObjectIdentifier, StoreObjectIdentifier) |
Restituisce il nome del vincolo di chiave esterna. |
| GetConstraintName(IForeignKey) |
Restituisce il nome del vincolo di chiave esterna. |
| GetConstraintName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier) |
Restituisce il nome del vincolo di chiave esterna. |
| GetConstraintName(IReadOnlyForeignKey) |
Restituisce il nome del vincolo di chiave esterna. |
| GetDefaultName(IForeignKey, StoreObjectIdentifier, StoreObjectIdentifier) |
Restituisce il nome del vincolo predefinito che verrebbe utilizzato per questa chiave esterna. |
| GetDefaultName(IForeignKey) |
Restituisce il nome del vincolo predefinito che verrebbe utilizzato per questa chiave esterna. |
| GetDefaultName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier) |
Restituisce il nome del vincolo predefinito che verrebbe utilizzato per questa chiave esterna. |
| GetDefaultName(IReadOnlyForeignKey) |
Restituisce il nome del vincolo predefinito che verrebbe utilizzato per questa chiave esterna. |
| GetDependentKeyValueFactory<TKey>(IForeignKey) |
Crea una factory per i valori delle chiavi in base ai valori di chiave esterna acquisiti da varie forme di dati di entità. Questo metodo viene in genere usato dai provider di database (e altre estensioni). In genere non viene usato nel codice dell'applicazione. |
| GetFluentApiCalls(IForeignKey, IAnnotationCodeGenerator, Boolean) |
Ottiene le chiamate API Fluent per configurare una chiave esterna. |
| GetMappedConstraints(IForeignKey) |
Ottiene i vincoli di chiave esterna a cui viene eseguito il mapping della chiave esterna. |
| GetNavigation(IForeignKey, Boolean) |
Restituisce una struttura di spostamento associata a questa chiave esterna. |
| GetRelatedEntityType(IForeignKey, IEntityType) |
Ottiene il tipo di entità correlato a quello specificato. |
| IsBaseLinking(IForeignKey) |
Restituisce un valore che indica se la chiave esterna è definita nella chiave primaria e punta alla stessa chiave primaria. |
| IsExcludedFromMigrations(IReadOnlyForeignKey) |
Restituisce un valore che indica se il vincolo di chiave esterna è escluso dalle migrazioni. |
| IsRowInternal(IReadOnlyForeignKey, StoreObjectIdentifier) |
Restituisce un valore che indica se questa chiave esterna è tra due tipi di entità che condividono lo stesso oggetto archivio di tipo tabella. |
| Relational(IForeignKey) |
Ottiene i metadati specifici del database relazionale per una chiave esterna. |
| Sqlite(IForeignKey) |
Ottiene i metadati specifici di SQLite per una chiave esterna. |
| SqlServer(IForeignKey) |
Ottiene il SQL Server metadati specifici per una chiave esterna. |
| ToDebugString(IForeignKey, MetadataDebugStringOptions, Int32) |
Crea una rappresentazione leggibile dei metadati specificati. Avviso: non basarsi sul formato della stringa restituita. È progettato solo per il debug e può cambiare arbitrariamente tra le versioni. |