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


DbConfiguration Класс

Определение

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

public class DbConfiguration
type DbConfiguration = class
Public Class DbConfiguration
Наследование
DbConfiguration

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

DbConfiguration()

Любой класс, производный от , DbConfiguration должен иметь открытый конструктор без параметров, и этот конструктор должен вызывать этот конструктор.

Свойства

DependencyResolver

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

Методы

AddDefaultResolver(IDbDependencyResolver)

Вызовите этот метод из конструктора класса, производного от , DbConfiguration чтобы добавить IDbDependencyResolver экземпляр в цепочку ответственности сопоставителей, которые используются для разрешения зависимостей, необходимых Entity Framework. В отличие от метода AddDependencyResolver, этот метод помещает сопоставитель в нижнюю часть цепочки ответственности таким образом, что он будет использоваться только для разрешения зависимости, которую не может разрешить ни один из других сопоставителей.

AddDependencyResolver(IDbDependencyResolver)

Вызовите этот метод из конструктора класса, производного от , DbConfiguration чтобы добавить IDbDependencyResolver экземпляр в цепочку ответственности сопоставителей, которые используются для разрешения зависимостей, необходимых Entity Framework.

AddInterceptor(IDbInterceptor)

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

Equals(Object)

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

GetHashCode()

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

GetType()

Возвращает объект Type для текущего экземпляра.

LoadConfiguration(Assembly)

Пытается обнаружить и загрузить из заданной сборки DbConfiguration . Этот метод предназначен для использования средствами, чтобы обеспечить загрузку правильной конфигурации в домен приложения. Инструменты должны использовать этот метод перед доступом к свойству DependencyResolver . Если инструментарию известен используемый DbContext тип, следует LoadConfiguration(Type) использовать метод , так как он дает большую вероятность того, что будет найдена правильная конфигурация.

LoadConfiguration(Type)

Пытается обнаружить и загрузить объект , связанный DbConfiguration с заданным DbContext типом. Этот метод предназначен для использования средствами, чтобы обеспечить загрузку правильной конфигурации в домен приложения. Инструменты должны использовать этот метод перед доступом к свойству DependencyResolver .

MemberwiseClone()

Создает неполную копию текущего объекта Object.

SetConfiguration(DbConfiguration)

Одноэлементный DbConfiguration экземпляр для этого домена приложения. Его можно задать при запуске приложения до использования каких-либо функций Entity Framework, а затем следует рассматривать как доступные только для чтения.

SetContextFactory(Type, Func<DbContext>)

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

SetContextFactory<TContext>(Func<TContext>)

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

SetDatabaseInitializer<TContext>(IDatabaseInitializer<TContext>)

Вызовите этот метод из конструктора класса, производного от DbConfiguration , чтобы задать инициализатор базы данных для использования для заданного типа контекста. Инициализатор базы данных вызывается, когда данный DbContext тип используется для первого доступа к базе данных. Стратегия по умолчанию для контекстов Code First — это экземпляр CreateDatabaseIfNotExists<TContext>.

SetDatabaseLogFormatter(Func<DbContext,Action<String>,DatabaseLogFormatter>)

Вызовите этот метод из конструктора класса, производного от DbConfiguration , чтобы задать фабрику для типа , используемого DatabaseLogFormatter с Log.

SetDefaultConnectionFactory(IDbConnectionFactory)

Задает объект , используемый IDbConnectionFactory для создания подключений по соглашению, если другие строки подключения или подключения не заданы или не могут быть обнаружены .DbContext Обратите внимание, что фабрика подключений по умолчанию задается в файле app.config или web.config при установке пакета NuGet EntityFramework. Как и для всех параметров файла конфигурации, фабрика подключений по умолчанию, установленная в файле конфигурации, имеет приоритет над любым параметром, сделанным с помощью этого метода. Поэтому параметр необходимо удалить из файла конфигурации, прежде чем вызов этого метода будет иметь какое-либо действие. Вызовите этот метод из конструктора класса, производного от , DbConfiguration чтобы изменить используемую фабрику соединений по умолчанию.

SetDefaultHistoryContext(Func<DbConnection,String,HistoryContext>)

Вызовите этот метод из конструктора класса, производного от DbConfiguration , чтобы задать Func<T1,T2,TResult> делегат, который будет использоваться для создания значения по умолчанию HistoryContext для любого DbMigrationsConfigurationобъекта . Эта фабрика по умолчанию будет использоваться только в том случае, если фабрика не задана DbMigrationsConfiguration явным образом в и если фабрика не была зарегистрирована для используемого поставщика с помощью SetHistoryContext(String, Func<DbConnection,String,HistoryContext>) метода .

SetDefaultSpatialServices(DbSpatialServices)

Вызовите этот метод из конструктора класса, производного от DbConfiguration , чтобы задать глобальный DbSpatialServices экземпляр , который будет использоваться всякий раз, когда требуется пространственный поставщик и не удается найти поставщик пространственных данных. Обычно пространственный поставщик, зависящий от поставщика, получается из DbProviderServices реализации, которая, в свою очередь, возвращается путем разрешения службы для DbSpatialServices передачи инвариантного имени поставщика в качестве ключа. Однако это не может работать для автономных экземпляров DbGeometry и DbGeography , так как невозможно узнать, какой пространственный поставщик будет использоваться. Поэтому при создании автономных экземпляров DbGeometry и DbGeography всегда используется глобальный пространственный поставщик.

SetDefaultTransactionHandler(Func<TransactionHandler>)

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

SetExecutionStrategy(String, Func<IDbExecutionStrategy>)

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

SetExecutionStrategy(String, Func<IDbExecutionStrategy>, String)

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

SetHistoryContext(String, Func<DbConnection,String,HistoryContext>)

Вызовите этот метод из конструктора класса, производного от DbConfiguration , чтобы задать Func<T1,T2,TResult> делегат, который позволяет создать настроенный HistoryContext для заданного поставщика объект для любого DbMigrationsConfiguration , у которого нет явного набора фабрики.

SetManifestTokenResolver(IManifestTokenResolver)

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

SetMetadataAnnotationSerializer(String, Func<IMetadataAnnotationSerializer>)

Вызовите этот метод из конструктора класса, производного от DbConfiguration , чтобы задать фабрику для реализаций IMetadataAnnotationSerializer , которая позволяет сериализовать пользовательские заметки, представленные экземплярами MetadataProperty , в xml EDMX и из него.

SetMigrationSqlGenerator(String, Func<MigrationSqlGenerator>)

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

SetModelCacheKey(Func<DbContext,IDbModelCacheKey>)

Вызовите этот метод из конструктора класса, производного от DbConfiguration , чтобы задать Func<T,TResult> в качестве фабрики ключей кэша модели, что позволяет изменить ключ, используемый для кэширования модели за .DbContext

SetModelStore(DbModelStore)

Задает реализацию одноэлементного хранилища моделей (сохраненный кэш модели).

SetPluralizationService(IPluralizationService)

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

SetProviderFactory(String, DbProviderFactory)

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

SetProviderFactoryResolver(IDbProviderFactoryResolver)

Вызовите этот метод из конструктора класса, производного от DbConfiguration , чтобы задать реализацию IDbProviderFactoryResolver , которая позволяет DbProviderFactory получить из DbConnection объекта в случаях, когда реализации по умолчанию недостаточно.

SetProviderServices(String, DbProviderServices)

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

SetSpatialServices(DbProviderInfo, DbSpatialServices)

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

SetSpatialServices(String, DbSpatialServices)

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

SetTableExistenceChecker(String, TableExistenceChecker)

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

SetTransactionHandler(String, Func<TransactionHandler>)

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

SetTransactionHandler(String, Func<TransactionHandler>, String)

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

ToString()

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

События

Loaded

Происходит во время инициализации EF после создания DbConfiguration, но непосредственно перед блокировкой, готовой к использованию. Используйте это событие для проверки и (или) переопределения служб, которые были зарегистрированы до блокировки конфигурации. Обратите внимание, что это событие следует использовать с осторожностью, так как оно может помешать инструментам обнаружить ту же конфигурацию, которая используется во время выполнения.

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