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


System.Data.Entity Пространство имен

Классы

CreateDatabaseIfNotExists<TContext>

Реализация IDatabaseInitializer, которая повторно создает и при необходимости повторно заполняет базу данных только в том случае, если база данных не существует. Чтобы заполнить базу данных начальными значениями, создайте производный класс и переопределите метод Seed.

Database

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

DbConfiguration

Класс, производный от этого класса, можно поместить в ту же сборку, что и класс, производный от DbContext , чтобы определить конфигурацию Entity Framework для приложения. Настройка настраивается путем вызова защищенных методов и задания защищенных свойств этого класса в конструкторе производного типа. Используемый тип также можно зарегистрировать в файле конфигурации приложения. Дополнительные сведения о конфигурации Entity Framework см. в этой статье http://go.microsoft.com/fwlink/?LinkId=260883 .

DbConfigurationTypeAttribute

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

DbContext

Экземпляр DbContext представляет собой сочетание шаблонов Unit Of Work и Repository таким образом, что его можно использовать для запроса из базы данных и группирования изменений, которые затем будут записаны обратно в хранилище как единое целое. DbContext концептуально похож на ObjectContext.

DbContextTransaction

Создает оболочку для доступа к объекту транзакции в базовом подключении к хранилищу и гарантирует, что Entity Framework выполняет команды в базе данных в контексте этой транзакции. Экземпляр этого класса извлекается путем вызова Метода BeginTransaction() для DbContextDatabase объекта .

DbExtensions
DbFunctionAttribute

Указывает, что данный метод является прокси-сервером для функции EDM.

DbFunctions

Предоставляет методы среды CLR, которые предоставляют канонические функции EDM для использования в DbContext запросах или ObjectContext LINQ to Entities.

DbModelBuilder

DbModelBuilder используется для сопоставления классов CLR со схемой базы данных. Этот ориентированный на код подход к созданию модели EDM называется Code First.

DbModelBuilderVersionAttribute

Этот атрибут можно применить к классу, производном от DbContext , чтобы задать версию DbContext и DbModelBuilder соглашений, которые следует использовать при построении модели из кода, также известного как Code First. Дополнительные сведения о версиях DbModelBuilderVersion DbModelBuilder см. в перечислении.

DbSet

Неуниверсивная DbSet<TEntity> версия, которую можно использовать, если тип сущности неизвестен во время сборки.

DbSet<TEntity>

DbSet представляет коллекцию всех сущностей в контексте или которые можно запрашивать из базы данных заданного типа. Объекты DbSet создаются из DbContext с помощью метода DbContext.Set.

DropCreateDatabaseAlways<TContext>

Реализация IDatabaseInitializer, которая всегда повторно создает и при необходимости повторно заполняет базу данных при первом использовании контекста в домене приложения. Чтобы заполнить базу данных начальными значениями, создайте производный класс и переопределите метод Seed.

DropCreateDatabaseIfModelChanges<TContext>

Реализация IDatabaseInitializer, которая выполняет DELETE, повторное создание и при необходимости повторное заполнение базы данных только в том случае, если модель изменилась с момента создания базы данных.

MigrateDatabaseToLatestVersion<TContext,TMigrationsConfiguration>

РеализацияIDatabaseInitializer<TContext>, которая будет использовать Code First Migrations для обновления базы данных до последней версии.

NullDatabaseInitializer<TContext>

Реализация , IDatabaseInitializer<TContext> которая ничего не делает. Использование этого инициализатора отключает инициализацию базы данных для заданного типа контекста. Передача экземпляра этого класса SetInitializer<TContext>(IDatabaseInitializer<TContext>) в эквивалентна передаче null. При IDbDependencyResolver использовании для разрешения инициализаторов экземпляр этого класса должен использоваться для отключения инициализации.

ObservableCollectionExtensions

Методы расширения для ObservableCollection<T>.

QueryableExtensions

Полезные методы расширения для использования с запросами LINQ Entity Framework.

Интерфейсы

IDatabaseInitializer<TContext>

Реализация этого интерфейса используется для инициализации базовой базы данных при первом использовании экземпляра производного DbContext класса. Эта инициализация может условно создать базу данных и (или) заполнить ее данными. Используемая стратегия задается с помощью статического свойства Database InitializationStrategy класса . Предоставляются следующие реализации: DropCreateDatabaseIfModelChanges<TContext>, DropCreateDatabaseAlways<TContext>, CreateDatabaseIfNotExists<TContext>.

IDbSet<TEntity>

Представляет IDbSet<TEntity> коллекцию всех сущностей в контексте или, которые могут быть запрошены из базы данных заданного типа. DbSet<TEntity> — это конкретная реализация IDbSet.

Перечисления

DbModelBuilderVersion

Значение из этого перечисления может быть предоставлено непосредственно классу DbModelBuilder или может использоваться в объекте DbModelBuilderVersionAttribute , примененном к классу, производном от DbContext. Используемое значение определяет, какая версия соглашений DbContext и DbModelBuilder должна использоваться при построении модели из кода, также известного как Code First.

EntityState

Описывает состояние сущности.

TransactionalBehavior

Управляет поведением создания транзакций при выполнении команды или запроса базы данных.