IModel Интерфейс

Определение

Метаданные о форме сущностей, связях между ними и их сопоставлении с базой данных. Модель обычно создается путем переопределения OnModelCreating(ModelBuilder) метода в производном 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
Производный
Реализации

Комментарии

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

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

Свойства

Item[String]

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

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

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

ModelId

Это внутренний API, который поддерживает инфраструктуру Entity Framework Core и не подчиняется тем же стандартам совместимости, что и общедоступные API. Он может быть изменен или удален без уведомления в любом выпуске. Его следует использовать только непосредственно в коде с особой осторожностью, зная, что это может привести к сбоям приложений при обновлении до нового выпуска Entity Framework Core.

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

Методы

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объекте .

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)

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

GetFluentApiCalls(IModel, IAnnotationCodeGenerator)

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

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)

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

GetSequenceNameSuffix(IReadOnlyModel)

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

GetSequenceSchema(IReadOnlyModel)

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

GetServiceTierSql(IModel)

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

GetServiceTierSql(IReadOnlyModel)

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

GetValueGenerationStrategy(IModel)

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

GetValueGenerationStrategy(IReadOnlyModel)

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

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