Język

IMutableForeignKey Interfejs

Definicja

Reprezentuje relację, w której właściwości klucza obcego w typie jednostki zależnej odwołują się do odpowiedniego klucza podstawowego lub alternatywnego w typie jednostki głównej.

public interface IMutableForeignKey : Microsoft.EntityFrameworkCore.Metadata.IForeignKey, Microsoft.EntityFrameworkCore.Metadata.IMutableAnnotatable
public interface IMutableForeignKey : Microsoft.EntityFrameworkCore.Metadata.IMutableAnnotatable, Microsoft.EntityFrameworkCore.Metadata.IReadOnlyForeignKey
type IMutableForeignKey = interface
    interface IForeignKey
    interface IAnnotatable
    interface IMutableAnnotatable
type IMutableForeignKey = interface
    interface IReadOnlyForeignKey
    interface IReadOnlyAnnotatable
    interface IMutableAnnotatable
Public Interface IMutableForeignKey
Implements IForeignKey, IMutableAnnotatable
Public Interface IMutableForeignKey
Implements IMutableAnnotatable, IReadOnlyForeignKey
Implementuje

Uwagi

Ten interfejs jest używany podczas tworzenia modelu i umożliwia modyfikowanie metadanych. Gdy model zostanie skompilowany, IForeignKey reprezentuje widok tylko do odczytu tych samych metadanych.

Aby uzyskać więcej informacji i przykładów, zobacz Modelowanie typów jednostek i relacji .

Właściwości

Nazwisko Opis
DeclaringEntityType

Pobiera zależny typ jednostki. Może to różnić się od typu Properties zdefiniowanego podczas definiowania typu pochodnego w hierarchii dziedziczenia (ponieważ właściwości mogą być zdefiniowane w typie podstawowym).

DeleteBehavior

Pobiera lub ustawia wartość wskazującą, jak operacja usuwania jest stosowana do jednostek zależnych w relacji po usunięciu podmiotu zabezpieczeń lub zerwaniu relacji.

DependentToPrincipal

Pobiera właściwość nawigacji dla typu jednostki zależnej, która wskazuje jednostkę główną.

IsConstrained

Ustawia wartość wskazującą, czy relacja jest ograniczona, czyli poparta gwarancją, że istnieje pasujący klucz podmiotu zabezpieczeń dla każdej ustawionej wartości klucza obcego.

IsOwnership

Pobiera lub ustawia wartość wskazującą, czy ta relacja definiuje własność. Jeśli to prawda, jednostka zależna musi być zawsze dostępna za pośrednictwem nawigacji z jednostki głównej.

IsRequired

Ustawia wartość wskazującą, czy jednostka główna jest wymagana. Jeśli truejednostka zależna musi być zawsze przypisana do prawidłowej jednostki głównej.

IsRequiredDependent

Ustawia wartość wskazującą, czy jednostka zależna jest wymagana. Jeśli truejednostka główna musi mieć zawsze przypisaną prawidłową jednostkę zależną.

IsUnique

Pobiera lub ustawia wartość wskazującą, czy wartości przypisane do właściwości klucza obcego są unikatowe.

Item[String]

Pobiera wartość adnotacji o podanej nazwie, zwracając null ją, jeśli nie istnieje.

(Odziedziczone po IReadOnlyAnnotatable)
PrincipalEntityType

Pobiera typ jednostki głównej, który jest przeznaczony dla tej relacji. Może to różnić się od typu PrincipalKey zdefiniowanego w przypadku, gdy relacja jest przeznaczona dla typu pochodnego w hierarchii dziedziczenia (ponieważ klucz jest zdefiniowany w podstawowym typie hierarchii).

PrincipalKey

Pobiera klucz podstawowy lub alternatywny przeznaczony dla relacji.

PrincipalToDependent

Pobiera właściwość nawigacji dla typu jednostki głównej, która wskazuje jednostkę zależną.

Properties

Pobiera właściwości klucza obcego w jednostce zależnej.

Metody

Nazwisko Opis
AddAnnotation(String, Object)

Dodaje adnotację do tego obiektu. Zgłasza, czy adnotacja o określonej nazwie już istnieje.

(Odziedziczone po IMutableAnnotatable)
AddAnnotations(IEnumerable<IAnnotation>)

Dodaje adnotacje do obiektu.

(Odziedziczone po IMutableAnnotatable)
AddRuntimeAnnotation(String, Object)

Dodaje adnotację środowiska uruchomieniowego do tego obiektu. Zgłasza, czy adnotacja o określonej nazwie już istnieje.

(Odziedziczone po IAnnotatable)
AnnotationsToDebugString(Int32)

Pobiera ciąg debugowania dla wszystkich adnotacji zadeklarowanych w obiekcie.

(Odziedziczone po IReadOnlyAnnotatable)
FindAnnotation(String)

Pobiera adnotację o podanej nazwie, zwracając null ją, jeśli nie istnieje.

(Odziedziczone po IReadOnlyAnnotatable)
FindRuntimeAnnotation(String)

Pobiera adnotację środowiska uruchomieniowego o podanej nazwie, zwracając null ją, jeśli nie istnieje.

(Odziedziczone po IAnnotatable)
FindRuntimeAnnotationValue(String)

Pobiera wartość adnotacji środowiska uruchomieniowego o podanej nazwie, zwracając null ją, jeśli nie istnieje.

(Odziedziczone po IAnnotatable)
GetAnnotation(String)

Pobiera adnotację o podanej nazwie, zgłaszając ją, jeśli nie istnieje.

(Odziedziczone po IReadOnlyAnnotatable)
GetAnnotations()

Pobiera wszystkie adnotacje w bieżącym obiekcie.

(Odziedziczone po IReadOnlyAnnotatable)
GetDependentKeyValueFactory()

Tworzy fabrykę wartości kluczy na podstawie wartości klucza obcego pobranych z różnych form danych jednostki.

Ta metoda jest zwykle używana przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji.

(Odziedziczone po IForeignKey)
GetDependentKeyValueFactory<TKey>()

Tworzy fabrykę wartości kluczy na podstawie wartości klucza obcego pobranych z różnych form danych jednostki.

Ta metoda jest zwykle używana przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji.

(Odziedziczone po IForeignKey)
GetNavigation(Boolean)

Zwraca nawigację skojarzona z tym kluczem obcym.

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

Pobiera wartość adnotacji środowiska uruchomieniowego o podanej nazwie, dodając ją, jeśli nie istnieje.

(Odziedziczone po IAnnotatable)
GetReferencingSkipNavigations()

Pobiera wszystkie nawigacje pomijane przy użyciu tego klucza obcego.

GetRelatedEntityType(IReadOnlyEntityType)

Pobiera typ jednostki powiązany z danym.

GetRuntimeAnnotations()

Pobiera wszystkie adnotacje środowiska uruchomieniowego w bieżącym obiekcie.

(Odziedziczone po IAnnotatable)
HasDependentToPrincipal(MemberInfo)
Przestarzałe.

Ustawia właściwość nawigacji na typie jednostki zależnej wskazującym jednostkę główną.

HasDependentToPrincipal(PropertyInfo)

Ustawia właściwość nawigacji na typie jednostki zależnej wskazującym jednostkę główną.

HasDependentToPrincipal(String)
Przestarzałe.

Ustawia właściwość nawigacji na typie jednostki zależnej wskazującym jednostkę główną.

HasPrincipalToDependent(MemberInfo)
Przestarzałe.

Ustawia właściwość nawigacji dla typu jednostki głównej, która wskazuje jednostkę zależną.

HasPrincipalToDependent(PropertyInfo)

Ustawia właściwość nawigacji dla typu jednostki głównej, która wskazuje jednostkę zależną.

HasPrincipalToDependent(String)
Przestarzałe.

Ustawia właściwość nawigacji dla typu jednostki głównej, która wskazuje jednostkę zależną.

IsBaseLinking()

Zwraca wartość wskazującą, czy klucz obcy jest zdefiniowany na kluczu podstawowym i wskazuje ten sam klucz podstawowy.

(Odziedziczone po IReadOnlyForeignKey)
IsEffectivelyRequired()

Zwraca wartość wskazującą, czy ustawiona wartość dla tego klucza obcego ma gwarancję odwołania się do istniejącego podmiotu zabezpieczeń — czyli relacja jest wymagana (IsRequired) i ograniczona (IsConstrained). Zapytanie sprawdza to, czy można rozszerzyć nawigację zależną do podmiotu zabezpieczeń za pomocą sprzężenia wewnętrznego (i czy takie sprzężenie można przycinać); relacja bez ograniczeń jest zawsze traktowana jako opcjonalna, nawet jeśli jej właściwości klucza obcego nie są dopuszczane do wartości null.

(Odziedziczone po IReadOnlyForeignKey)
RemoveAnnotation(String)

Usuwa daną adnotację z tego obiektu.

(Odziedziczone po IMutableAnnotatable)
RemoveRuntimeAnnotation(String)

Usuwa daną adnotację środowiska uruchomieniowego z tego obiektu.

(Odziedziczone po IAnnotatable)
SetAnnotation(String, Object)

Ustawia adnotację przechowywaną w ramach danego klucza. Zastępuje istniejącą adnotację, jeśli adnotacja o określonej nazwie już istnieje.

(Odziedziczone po IMutableAnnotatable)
SetDependentToPrincipal(MemberInfo)

Ustawia właściwość nawigacji na typie jednostki zależnej wskazującym jednostkę główną.

SetDependentToPrincipal(String)

Ustawia właściwość nawigacji na typie jednostki zależnej wskazującym jednostkę główną.

SetOrRemoveAnnotation(String, Object)

Ustawia adnotację przechowywaną pod daną nazwą. Zastępuje istniejącą adnotację, jeśli adnotacja o określonej nazwie już istnieje. Usuwa istniejącą adnotację, jeśli null jest podana.

(Odziedziczone po IMutableAnnotatable)
SetPrincipalToDependent(MemberInfo)

Ustawia właściwość nawigacji dla typu jednostki głównej, która wskazuje jednostkę zależną.

SetPrincipalToDependent(String)

Ustawia właściwość nawigacji dla typu jednostki głównej, która wskazuje jednostkę zależną.

SetProperties(IReadOnlyList<IMutableProperty>, IMutableKey)

Ustawia właściwości klucza obcego i ten docelowy klucz główny.

SetRuntimeAnnotation(String, Object)

Ustawia adnotację środowiska uruchomieniowego przechowywaną w ramach danego klucza. Zastępuje istniejącą adnotację, jeśli adnotacja o określonej nazwie już istnieje.

(Odziedziczone po IAnnotatable)
ToDebugString(MetadataDebugStringOptions, Int32)

Tworzy czytelną dla człowieka reprezentację podanych metadanych.

Ostrzeżenie: nie należy polegać na formacie zwracanego ciągu. Jest przeznaczony tylko do debugowania i może zmieniać się dowolnie między wydaniami.

(Odziedziczone po IReadOnlyForeignKey)

Metody rozszerzania

Nazwisko Opis
AddAnnotations(IMutableAnnotatable, IEnumerable<IAnnotation>)

Dodaje adnotacje do obiektu.

AnnotationsToDebugString(IAnnotatable, Int32)

Pobiera ciąg debugowania dla wszystkich adnotacji zadeklarowanych w obiekcie.

FindSharedObjectRootForeignKey(IForeignKey, StoreObjectIdentifier)

Znajduje pierwszy IForeignKey mapowany na to samo ograniczenie w udostępnionym obiekcie przypominającym tabelę.

Ta metoda jest zwykle używana przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji.

FindSharedObjectRootForeignKey(IMutableForeignKey, StoreObjectIdentifier)

Znajduje pierwszy IMutableForeignKey mapowany na to samo ograniczenie w udostępnionym obiekcie przypominającym tabelę.

Ta metoda jest zwykle używana przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji.

FindSharedObjectRootForeignKey(IReadOnlyForeignKey, StoreObjectIdentifier)

Znajduje pierwszy IForeignKey mapowany na to samo ograniczenie w udostępnionym obiekcie przypominającym tabelę.

Ta metoda jest zwykle używana przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji.

GetAnnotation(IAnnotatable, String)

Pobiera adnotację o podanej nazwie, zgłaszając ją, jeśli nie istnieje.

GetAnnotation(IMutableAnnotatable, String)

Pobiera adnotację o podanej nazwie, zgłaszając ją, jeśli nie istnieje.

GetConstraintName(IForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Zwraca nazwę ograniczenia klucza obcego.

GetConstraintName(IForeignKey)

Zwraca nazwę ograniczenia klucza obcego.

GetConstraintName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Zwraca nazwę ograniczenia klucza obcego.

GetConstraintName(IReadOnlyForeignKey)

Zwraca nazwę ograniczenia klucza obcego.

GetDefaultName(IForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Zwraca domyślną nazwę ograniczenia, która będzie używana dla tego klucza obcego.

GetDefaultName(IForeignKey)

Zwraca domyślną nazwę ograniczenia, która będzie używana dla tego klucza obcego.

GetDefaultName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Zwraca domyślną nazwę ograniczenia, która będzie używana dla tego klucza obcego.

GetDefaultName(IReadOnlyForeignKey)

Zwraca domyślną nazwę ograniczenia, która będzie używana dla tego klucza obcego.

GetDependentKeyValueFactory<TKey>(IForeignKey)

Tworzy fabrykę wartości kluczy na podstawie wartości klucza obcego pobranych z różnych form danych jednostki.

Ta metoda jest zwykle używana przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji.

GetMappedConstraints(IForeignKey)

Pobiera ograniczenia klucza obcego, do których jest mapowany klucz obcy.

GetNavigation(IForeignKey, Boolean)

Zwraca nawigację skojarzona z tym kluczem obcym.

GetNavigation(IMutableForeignKey, Boolean)

Zwraca nawigację skojarzona z tym kluczem obcym.

GetOrAddAnnotation(IMutableAnnotatable, String, String)

Pobiera istniejącą adnotację z danym kluczem lub dodaje nową adnotację, jeśli nie istnieje.

GetRelatedEntityType(IForeignKey, IEntityType)

Pobiera typ jednostki powiązany z danym.

GetRelatedEntityType(IMutableForeignKey, IMutableEntityType)

Pobiera typ jednostki powiązany z danym.

IsBaseLinking(IForeignKey)

Zwraca wartość wskazującą, czy klucz obcy jest zdefiniowany na kluczu podstawowym i wskazuje ten sam klucz podstawowy.

IsExcludedFromMigrations(IReadOnlyForeignKey)

Zwraca wartość wskazującą, czy ograniczenie klucza obcego jest wykluczone z migracji.

IsRowInternal(IReadOnlyForeignKey, StoreObjectIdentifier)

Zwraca wartość wskazującą, czy ten klucz obcy znajduje się między dwoma typami jednostek współużytkowania tego samego obiektu magazynu przypominającego tabelę.

Relational(IForeignKey)

Pobiera metadane specyficzne dla relacyjnej bazy danych dla klucza obcego.

Relational(IMutableForeignKey)

Pobiera metadane specyficzne dla relacyjnej bazy danych dla klucza obcego.

SetConstraintName(IMutableForeignKey, String)

Ustawia nazwę ograniczenia klucza obcego.

SetIsExcludedFromMigrations(IMutableForeignKey, Nullable<Boolean>)

Ustawia wartość wskazującą, czy ograniczenie klucza obcego jest wykluczone z migracji.

SetOrRemoveAnnotation(IMutableAnnotatable, String, Object)

Ustawia adnotację przechowywaną pod daną nazwą. Zastępuje istniejącą adnotację, jeśli adnotacja o określonej nazwie już istnieje. Usuwa istniejącą adnotację, jeśli null jest podana.

Sqlite(IForeignKey)

Pobiera metadane specyficzne dla sqLite dla klucza obcego.

Sqlite(IMutableForeignKey)

Pobiera metadane specyficzne dla sqLite dla klucza obcego.

SqlServer(IForeignKey)

Pobiera SQL Server określonych metadanych dla klucza obcego.

SqlServer(IMutableForeignKey)

Pobiera SQL Server określonych metadanych dla klucza obcego.

ToDebugString(IForeignKey, MetadataDebugStringOptions, Int32)

Tworzy czytelną dla człowieka reprezentację podanych metadanych.

Ostrzeżenie: nie należy polegać na formacie zwracanego ciągu. Jest przeznaczony tylko do debugowania i może zmieniać się dowolnie między wydaniami.

Dotyczy