IForeignKey Интерфейс

Определение

Представляет связь, в которой внешний ключ, состоящий из свойств зависимого типа сущности, ссылается на соответствующий первичный или альтернативный ключ для типа основной сущности.

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
Производный
Реализации

Комментарии

Дополнительные сведения и примеры см. в разделе Моделирование типов сущностей и связей .

Свойства

DeclaringEntityType

Возвращает зависимый тип сущности. Это может отличаться от типа, Properties определенного в , когда связь определяется производным типом в иерархии наследования (так как свойства могут быть определены для базового типа).

DeleteBehavior

Возвращает значение, указывающее, как операция удаления применяется к зависимым сущностям в связи при удалении субъекта или разрыва связи.

DependentToPrincipal

Возвращает свойство навигации для зависимого типа сущности, указывающего на сущность-субъект.

IsOwnership

Возвращает или задает значение, указывающее, определяет ли эта связь владение. Если trueзадано значение , доступ к зависимой сущности всегда должен осуществляться с помощью навигации из основной сущности.

IsRequired

Возвращает значение, указывающее, требуется ли основная сущность. Если trueзадано значение , зависимая сущность всегда должна быть назначена допустимой сущности субъекта.

IsRequiredDependent

Возвращает значение, указывающее, требуется ли зависимая сущность. При trueзначении основной сущности всегда должна быть назначена допустимая зависимая сущность.

IsUnique

Возвращает значение, указывающее, являются ли значения, назначенные свойствам внешнего ключа, уникальными.

Item[String]

Возвращает значение заметки с заданным именем, возвращая null значение , если она не существует.

(Унаследовано от IReadOnlyAnnotatable)
PrincipalEntityType

Возвращает тип основной сущности, на который нацелена эта связь. Это может отличаться от типа, определенного PrincipalKey в , когда отношение предназначено для производного типа в иерархии наследования (так как ключ определяется в базовом типе иерархии).

PrincipalKey

Возвращает первичный или альтернативный ключ, предназначенный для связи.

PrincipalToDependent

Возвращает свойство навигации для типа основной сущности, указывающего на зависимую сущность.

Properties

Возвращает свойства внешнего ключа в зависимой сущности.

Методы

AddRuntimeAnnotation(String, Object)

Добавляет заметку среды выполнения к этому объекту. Вызывает исключение, если заметка с указанным именем уже существует.

(Унаследовано от IAnnotatable)
AnnotationsToDebugString(Int32)

Возвращает отладочную строку для всех заметок, объявленных в объекте .

(Унаследовано от IReadOnlyAnnotatable)
FindAnnotation(String)

Возвращает заметку с заданным именем, возвращающую null значение , если она не существует.

(Унаследовано от IReadOnlyAnnotatable)
FindRuntimeAnnotation(String)

Возвращает заметку среды выполнения с заданным именем, возвращающую null значение , если она не существует.

(Унаследовано от IAnnotatable)
FindRuntimeAnnotationValue(String)

Возвращает значение заметки среды выполнения с заданным именем, возвращая null значение , если оно не существует.

(Унаследовано от IAnnotatable)
GetAnnotation(String)

Возвращает заметку с заданным именем, вызывая исключение, если она не существует.

(Унаследовано от IReadOnlyAnnotatable)
GetAnnotations()

Возвращает все заметки для текущего объекта.

(Унаследовано от IReadOnlyAnnotatable)
GetDependentKeyValueFactory()

Создает фабрику для значений ключей на основе значений внешнего ключа, полученных из различных форм данных сущности.

Этот метод обычно используется поставщиками баз данных (и другими расширениями). Как правило, он не используется в коде приложения.

GetDependentKeyValueFactory<TKey>()

Создает фабрику для значений ключей на основе значений внешнего ключа, полученных из различных форм данных сущности.

Этот метод обычно используется поставщиками баз данных (и другими расширениями). Как правило, он не используется в коде приложения.

GetNavigation(Boolean)

Возвращает навигацию, связанную с этим внешним ключом.

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

Возвращает значение заметки среды выполнения с заданным именем, добавляя его, если оно не существует.

(Унаследовано от IAnnotatable)
GetReferencingSkipNavigations()

Получает все переходы пропуска, использующие этот внешний ключ.

GetRelatedEntityType(IReadOnlyEntityType)

Возвращает тип сущности, связанный с данным типом.

GetRuntimeAnnotations()

Возвращает все заметки среды выполнения для текущего объекта .

(Унаследовано от IAnnotatable)
IsBaseLinking()

Возвращает значение, указывающее, определен ли внешний ключ в первичном ключе, и указывает ли он на тот же первичный ключ.

(Унаследовано от IReadOnlyForeignKey)
RemoveRuntimeAnnotation(String)

Удаляет заданную заметку среды выполнения из этого объекта.

(Унаследовано от IAnnotatable)
SetRuntimeAnnotation(String, Object)

Задает заметку среды выполнения, хранящуюся под заданным ключом. Перезаписывает существующую заметку, если заметка с указанным именем уже существует.

(Унаследовано от IAnnotatable)
ToDebugString(MetadataDebugStringOptions, Int32)

Создает понятное представление заданных метаданных.

Предупреждение. Не полагайтесь на формат возвращаемой строки. Он предназначен только для отладки и может изменяться произвольно между выпусками.

(Унаследовано от IReadOnlyForeignKey)

Методы расширения

GetDependentKeyValueFactory<TKey>(IForeignKey)

Создает фабрику для значений ключей на основе значений внешнего ключа, полученных из различных форм данных сущности.

Этот метод обычно используется поставщиками баз данных (и другими расширениями). Как правило, он не используется в коде приложения.

GetNavigation(IForeignKey, Boolean)

Возвращает навигацию, связанную с этим внешним ключом.

GetRelatedEntityType(IForeignKey, IEntityType)

Возвращает тип сущности, связанный с данным типом.

IsBaseLinking(IForeignKey)

Возвращает значение, указывающее, определен ли внешний ключ в первичном ключе, и указывает ли он на тот же первичный ключ.

ToDebugString(IForeignKey, MetadataDebugStringOptions, Int32)

Создает понятное представление заданных метаданных.

Предупреждение. Не полагайтесь на формат возвращаемой строки. Он предназначен только для отладки и может изменяться произвольно между выпусками.

AnnotationsToDebugString(IAnnotatable, Int32)

Возвращает отладочную строку для всех заметок, объявленных в объекте .

GetAnnotation(IAnnotatable, String)

Возвращает заметку с заданным именем, вызывая исключение, если она не существует.

FindSharedObjectRootForeignKey(IForeignKey, StoreObjectIdentifier)

Находит первый IConventionForeignKey объект, сопоставленный с тем же ограничением в общем табличном объекте.

Этот метод обычно используется поставщиками баз данных (и другими расширениями). Как правило, он не используется в коде приложения.

FindSharedObjectRootForeignKey(IReadOnlyForeignKey, StoreObjectIdentifier)

Находит первый IForeignKey объект, сопоставленный с тем же ограничением в общем табличном объекте.

Этот метод обычно используется поставщиками баз данных (и другими расширениями). Как правило, он не используется в коде приложения.

GetConstraintName(IForeignKey)

Возвращает имя ограничения внешнего ключа.

GetConstraintName(IForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Возвращает имя ограничения внешнего ключа.

GetConstraintName(IReadOnlyForeignKey)

Возвращает имя ограничения внешнего ключа.

GetConstraintName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Возвращает имя ограничения внешнего ключа.

GetDefaultName(IForeignKey)

Возвращает имя ограничения по умолчанию, которое будет использоваться для этого внешнего ключа.

GetDefaultName(IForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Возвращает имя ограничения по умолчанию, которое будет использоваться для этого внешнего ключа.

GetDefaultName(IReadOnlyForeignKey)

Возвращает имя ограничения по умолчанию, которое будет использоваться для этого внешнего ключа.

GetDefaultName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Возвращает имя ограничения по умолчанию, которое будет использоваться для этого внешнего ключа.

GetMappedConstraints(IForeignKey)

Возвращает ограничения внешнего ключа, с которым сопоставляется внешний ключ.

IsRowInternal(IReadOnlyForeignKey, StoreObjectIdentifier)

Возвращает значение, указывающее, находится ли этот внешний ключ между двумя типами сущностей, совместно использующее один и тот же табличный объект хранилища.

Relational(IForeignKey)

Возвращает метаданные реляционной базы данных для внешнего ключа.

GetFluentApiCalls(IForeignKey, IAnnotationCodeGenerator, Boolean)

Возвращает вызовы текучих API для настройки внешнего ключа.

Sqlite(IForeignKey)

Возвращает метаданные SQLite для внешнего ключа.

SqlServer(IForeignKey)

Возвращает SQL Server метаданные для внешнего ключа.

Применяется к