IModel Интерфейс

Определение

Метаданные о форме сущностей, связях между ними и их сопоставлении с базой данных. Модель обычно создается путем переопределения OnModelCreating(ModelBuilder) метода на производном DbContext.

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

public interface IModel : Microsoft.EntityFrameworkCore.Infrastructure.IAnnotatable
public interface IModel : Microsoft.EntityFrameworkCore.Infrastructure.IAnnotatable, Microsoft.EntityFrameworkCore.Metadata.IReadOnlyModel
type IModel = interface
    interface IAnnotatable
type IModel = interface
    interface IReadOnlyModel
    interface IReadOnlyAnnotatable
    interface IAnnotatable
Public Interface IModel
Implements IAnnotatable
Public Interface IModel
Implements IAnnotatable, IReadOnlyModel
Производный
Реализации

Комментарии

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

Свойства

Item[String]

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

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

Зависимости службы среды выполнения.

Методы

AddRuntimeAnnotation(String, Object)

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

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

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

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

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

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

Возвращает сущность с заданным именем. Возвращает значение, null если тип сущности с заданным именем не найден или данный тип СРЕДЫ CLR используется типом сущности общего типа или тип сущности имеет определяющую навигацию.

FindEntityType(String, String, IEntityType)

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

FindEntityType(String, String, IReadOnlyEntityType)

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

(Унаследовано от IReadOnlyModel)
FindEntityType(Type)

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

FindEntityType(Type, String, IEntityType)

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

FindEntityType(Type, String, IReadOnlyEntityType)

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

(Унаследовано от IReadOnlyModel)
FindEntityTypes(Type)

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

FindLeastDerivedEntityTypes(Type, Func<IReadOnlyEntityType,Boolean>)

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

FindRuntimeAnnotation(String)

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

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

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

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

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

FindTypeMappingConfiguration(Type)

Находит конфигурацию предварительного соглашения для заданного скалярного Type.

GetAnnotation(String)

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

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

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

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

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

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

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

GetModelDependencies()

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

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

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

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

Возвращает версию сборки EF Core, используемую для сборки этой модели.

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

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

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

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

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

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

Возвращает все конфигурации предварительного соглашения.

IsIndexerMethod(MethodInfo)

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

IsShared(Type)

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

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

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

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

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

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

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

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

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

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

GetDefaultContainer(IModel)

Возвращает имя контейнера по умолчанию.

GetDefaultContainer(IReadOnlyModel)

Возвращает имя контейнера по умолчанию.

GetThroughput(IReadOnlyModel)

Возвращает подготовленную пропускную способность в области базы данных.

AnnotationsToDebugString(IAnnotatable, Int32)

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

GetAnnotation(IAnnotatable, String)

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

GetRelationalDependencies(IModel, String)

Возвращает зависимости реляционной службы.

Scaffolding(IModel)

Метаданные о форме сущностей, связях между ними и их сопоставлении с базой данных. Модель обычно создается путем переопределения OnModelCreating(ModelBuilder) метода на производном DbContext.

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

FindEntityType(IModel, Type)
Является устаревшей.

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

FindEntityType(IModel, Type, String, IEntityType)

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

FindRuntimeEntityType(IModel, Type)

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

GetChangeTrackingStrategy(IModel)

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

GetEntityTypes(IModel, String)
Является устаревшей.

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

GetEntityTypes(IModel, Type)
Является устаревшей.

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

GetProductVersion(IModel)

Возвращает версию сборки EF Core, используемую для сборки этой модели.

GetPropertyAccessMode(IModel)

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

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

HasEntityTypeWithDefiningNavigation(IModel, String)
Является устаревшей.

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

HasEntityTypeWithDefiningNavigation(IModel, Type)
Является устаревшей.

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

IsIndexerMethod(IModel, MethodInfo)

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

IsShared(IModel, Type)

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

ToDebugString(IModel, MetadataDebugStringOptions, Int32)

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

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

Relational(IModel)

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

FindDbFunction(IModel, MethodInfo)

Находит функцию, сопоставленную с методом, представленным заданным MethodInfo.

FindDbFunction(IModel, String)

Находит функцию, сопоставленную с методом, представленным заданным именем.

FindDbFunction(IReadOnlyModel, MethodInfo)

Находит функцию, сопоставленную с методом, представленным заданным MethodInfo.

FindDbFunction(IReadOnlyModel, String)

Находит функцию, сопоставленную с методом, представленным заданным именем.

FindSequence(IModel, String, String)

Находит последовательность с заданным именем.

FindSequence(IReadOnlyModel, String, String)

Находит последовательность с заданным именем.

GetCollation(IModel)

Возвращает параметры сортировки базы данных.

GetCollation(IReadOnlyModel)

Возвращает параметры сортировки базы данных.

GetDbFunctions(IModel)

Возвращает все функции, содержащиеся в модели.

GetDbFunctions(IReadOnlyModel)

Возвращает все функции, содержащиеся в модели.

GetDefaultSchema(IModel)

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

GetDefaultSchema(IReadOnlyModel)

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

GetMaxIdentifierLength(IModel)

Возвращает максимальную длину, допустимую для идентификаторов хранилища.

GetMaxIdentifierLength(IReadOnlyModel)

Возвращает максимальную длину, допустимую для идентификаторов хранилища.

GetRelationalModel(IModel)

Возвращает модель базы данных.

GetSequences(IModel)

Возвращает все последовательности, содержащиеся в модели.

GetSequences(IReadOnlyModel)

Возвращает все последовательности, содержащиеся в модели.

Sqlite(IModel)

Возвращает определенные метаданные SQLite для модели.

SqlServer(IModel)

Возвращает SQL Server определенные метаданные для модели.

GetDatabaseMaxSize(IModel)

Возвращает максимальный размер базы данных.

GetDatabaseMaxSize(IReadOnlyModel)

Возвращает максимальный размер базы данных.

GetHiLoSequenceName(IModel)

Возвращает имя, используемое для последовательности hi-lo по умолчанию.

GetHiLoSequenceName(IReadOnlyModel)

Возвращает имя, используемое для последовательности hi-lo по умолчанию.

GetHiLoSequenceSchema(IModel)

Возвращает схему, используемую для последовательности hi-lo по умолчанию. UseHiLo(PropertyBuilder, String, String)

GetHiLoSequenceSchema(IReadOnlyModel)

Возвращает схему, используемую для последовательности hi-lo по умолчанию. UseHiLo(PropertyBuilder, String, String)

GetIdentityIncrement(IModel)

Возвращает приращение идентификатора по умолчанию.

GetIdentityIncrement(IReadOnlyModel)

Возвращает приращение идентификатора по умолчанию.

GetIdentitySeed(IModel)

Возвращает начальное значение идентификатора по умолчанию.

GetIdentitySeed(IReadOnlyModel)

Возвращает начальное значение идентификатора по умолчанию.

GetPerformanceLevelSql(IModel)

Возвращает уровень производительности базы данных.

GetPerformanceLevelSql(IReadOnlyModel)

Возвращает уровень производительности базы данных.

GetServiceTierSql(IModel)

Возвращает уровень служб базы данных.

GetServiceTierSql(IReadOnlyModel)

Возвращает уровень служб базы данных.

GetValueGenerationStrategy(IModel)

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

GetValueGenerationStrategy(IReadOnlyModel)

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

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