DbModelBuilder - класс
[Эта страница относится к документации к Entity Framework 6. Последняя версия доступна в составе пакета Entity Framework NuGet. Дополнительные сведения об Entity Framework см. в разделе msdn.com/data/ef.]
DbModelBuilder служит для сопоставления классов CLR со схемой базы данных. Этот ориентированный на код подход к построению модели EDM называется Code First.
Иерархия наследования
System.Object
System.Data.Entity.DbModelBuilder
Пространство имен: System.Data.Entity
Сборка: EntityFramework (в EntityFramework.dll)
Синтаксис
'Декларация
Public Class DbModelBuilder
'Применение
Dim instance As DbModelBuilder
public class DbModelBuilder
public ref class DbModelBuilder
type DbModelBuilder = class end
public class DbModelBuilder
Тип DbModelBuilder предоставляет следующие члены.
Конструкторы
Имя | Описание | |
---|---|---|
DbModelBuilder() | Инициализирует новый экземпляр класса DbModelBuilder.Процесс обнаружения исходной модели использует набор соглашений, который включен в самую последнюю версию платформы Entity Framework, установленную на компьютере. | |
DbModelBuilder(DbModelBuilderVersion) | Инициализирует новый экземпляр класса DbModelBuilder, который будет использовать конкретный набор соглашений для обнаружения исходной модели. |
По верхнему краю
Свойства
Имя | Описание | |
---|---|---|
Configurations | Возвращает результат ConfigurationRegistrar для данного DbModelBuilder.Регистратор позволяет регистрировать конфигурации с производными сущностями и сложными типами при помощи построителя. | |
Conventions | Предоставляет доступ к параметрам DbModelBuilder, который работает с соглашениями. |
По верхнему краю
Методы
Имя | Описание | |
---|---|---|
Build(DbConnection) | Создает объект DbModel на основе настроек, произведенных построителем.Подключение используется для определения используемого поставщика базы данных, так как он влияет на уровень базы данных в формируемой модели. | |
Build(DbProviderInfo) | Создает объект DbModel на основе настроек, произведенных построителем.Необходимо указать сведения о поставщике, так как они влияют на уровень базы данных в формируемой модели.Для поставщика SqlClient используется неизменяемое имя «System.Data.SqlClient» и токен манифеста, содержащий год выхода версии (например, «2005», «2008» и т. д.). | |
ComplexType<TComplexType> | Регистрирует тип в качестве сложного типа модели и возвращает объект, который можно использовать для настройки этого сложного типа.Данный метод можно вызывать повторно для одного и того же типа, чтобы применить несколько строк настроек. | |
Entity<TEntityType> | Регистрирует тип сущности как часть модели и возвращает объект, который можно использовать для настройки этой сущности.Данный метод можно вызывать повторно для одной и той же сущности, чтобы применить несколько строк настроек. | |
Equals | Определяет, равен ли объект DbModelBuilder указанному объекту. (Переопределяет Object.Equals(Object).) | |
Finalize | (Унаследовано от Object.) | |
GetHashCode | Возвращает хэш-код текущего экземпляра. (Переопределяет Object.GetHashCode().) | |
GetType | Возвращает объект Type для текущего экземпляра. | |
HasDefaultSchema | Настраивает имя схемы базы данных по умолчанию.Это имя схемы базы данных по умолчанию используется для всех объектов базы данных, не имеющих явно заданного имени схемы. | |
Ignore(IEnumerable<Type>) | Исключает указанные типы из модели.Используется для удаления из модели типов, добавленных по соглашению в процессе обнаружения исходной модели. | |
Ignore<T>() | Исключает тип из модели.Используется для удаления из модели типов, добавленных по соглашению в процессе обнаружения исходной модели. | |
MemberwiseClone | (Унаследовано от Object.) | |
Properties() | Начинает настройку облегченного соглашения, применяемого ко всем свойствам в модели. | |
Properties<T>() | Начинает настройку облегченного соглашения, применяемого ко всем примитивным свойствам указанного типа в модели. | |
RegisterEntityType | Регистрирует тип сущности как часть модели. | |
ToString | Возвращает строковое представление объекта DbModelBuilder. (Переопределяет Object.ToString().) | |
Types() | Начинает настройку облегченного соглашения, применяемого ко всем сущностям и комплексным типам в модели. | |
Types<T>() | Начинает конфигурацию облегченного соглашения, которое применяется ко всем сущностям и комплексным типам в модели, наследующей от типа, указанного универсальным аргументом.Этот метод не регистрирует типы как составную часть модели. |
По верхнему краю
Примечания
DbModelBuilder обычно используется для настройки модели путем переопределения OnModelCreating(DbModelBuilder). Однако DbModelBuilder можно также использовать независимо от DbContext для сборки модели и последующего конструирования DbContext или ObjectContext. Рекомендуется использовать OnModelCreating в контексте DbContext, так как при таком подходе рабочий процесс является интуитивно более понятным и обслуживает такие типовые задачи, как кэширование созданной модели. Типы, которые формируют модель, регистрируются при помощи DbModelBuilder. Дополнительную настройку можно произвести, применяя к классам заметки к данным или с помощью API-интерфейса DbModelBuilder. При вызове метода Build запускается набор соглашений, позволяющих обнаружить исходную модель. Эти соглашения автоматически обнаруживают такие аспекты модели, как первичные ключи, а также обрабатывают любые заметки к данным, заданные в классах. В конце применяются любые настройки, выполненные с помощью API-интерфейса DbModelBuilder. Настройки, выполненные с использованием API DbModelBuilder, имеют более высокий приоритет, чем заметки к данным, которые в свою очередь имеют приоритет над соглашениями по умолчанию.
Потокобезопасность
Любые открытые члены этого типа, объявленные как static (Shared в Visual Basic), являются потокобезопасными. Потокобезопасная работа с членами экземпляров типа не гарантируется.