Поделиться через


ModelSource Класс

Определение

Реализация IModelSource , которая создает модель на DbSet<TEntity> основе свойств, предоставляемых в контексте. Модель кэшируется, чтобы избежать ее повторного создания при каждом запросе.

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

public abstract class ModelSource : Microsoft.EntityFrameworkCore.Infrastructure.IModelSource
public class ModelSource : Microsoft.EntityFrameworkCore.Infrastructure.IModelSource
type ModelSource = class
    interface IModelSource
Public MustInherit Class ModelSource
Implements IModelSource
Public Class ModelSource
Implements IModelSource
Наследование
ModelSource
Реализации

Комментарии

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

Дополнительные сведения и примеры см. в разделе Реализация поставщиков и расширений баз данных .

Конструкторы

ModelSource(IDbSetFinder, ICoreConventionSetBuilder, IModelCustomizer, IModelCacheKeyFactory)

Этот API поддерживает инфраструктуру Entity Framework Core и не предназначен для использования непосредственно из кода. В будущих выпусках этот API может быть изменен или удален.

ModelSource(ModelSourceDependencies)

Создает новый экземпляр ModelSource.

Свойства

CoreConventionSetBuilder

Возвращает объект , Microsoft.EntityFrameworkCore.Metadata.Conventions.Internal.ICoreConventionSetBuilder который будет создавать соглашения, которые будут использоваться для построения модели.

Dependencies

Зависимости для этой службы.

ModelCacheKeyFactory

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

ModelCustomizer

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

SetFinder

Возвращает объект , Microsoft.EntityFrameworkCore.Internal.IDbSetFinder который будет находить DbSet<TEntity> свойства в производном контексте.

Методы

CreateConventionSet(IConventionSetBuilder)

Создает набор соглашений, используемый для модели. Использует , Microsoft.EntityFrameworkCore.Metadata.Conventions.Internal.CoreConventionSetBuilder только если conventionSetBuilder имеет значение NULL.

CreateModel(DbContext, IConventionSetBuilder, IModelValidator)

Создает модель. Этот метод вызывается, если модель не найдена в кэше.

CreateModel(DbContext, IConventionSetBuilder, IModelValidator)

Создает модель. Этот метод вызывается, если модель не найдена в кэше.

CreateModel(DbContext, IConventionSetBuilder, ModelDependencies)

Создает модель. Этот метод вызывается, если модель не найдена в кэше.

CreateModel(DbContext, IConventionSetBuilder)
Устаревшие..
Устаревшие..

Создает модель. Этот метод вызывается, если модель не найдена в кэше.

FindSets(ModelBuilder, DbContext)

Добавляет в модель типы сущностей, найденные в DbSet<TEntity> свойствах контекста.

GetModel(DbContext, IConventionSetBuilder, IModelValidator)

Возвращает модель из кэша или создает модель, если она отсутствует в кэше.

GetModel(DbContext, IConventionSetBuilder, IModelValidator)

Возвращает модель из кэша или создает модель, если она отсутствует в кэше.

GetModel(DbContext, IConventionSetBuilder, ModelDependencies)
Устаревшие..

Возвращает модель из кэша или создает модель, если она отсутствует в кэше.

GetModel(DbContext, IConventionSetBuilder)
Устаревшие..
Устаревшие..

Возвращает модель из кэша или создает модель, если она отсутствует в кэше.

GetModel(DbContext, ModelCreationDependencies, Boolean)

Возвращает используемую модель.

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