다음을 통해 공유


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에서 서비스 종속성을 resolve 데 사용되는 을 가져옵니다.

메서드

AddDefaultResolver(IDbDependencyResolver)

에서 파생된 DbConfiguration 클래스의 생성자에서 이 메서드를 호출하여 Entity Framework에 필요한 종속성을 resolve 데 사용되는 확인자의 책임 체인에 instance 추가 IDbDependencyResolver 합니다. AddDependencyResolver 메서드와 달리 이 메서드는 다른 해결자가 확인할 수 없는 종속성을 resolve 데만 사용되도록 확인자를 책임 체인의 맨 아래에 배치합니다.

AddDependencyResolver(IDbDependencyResolver)

에서 파생된 DbConfiguration 클래스의 생성자에서 이 메서드를 호출하여 Entity Framework에 필요한 종속성을 resolve 데 사용되는 확인자의 책임 체인에 instance 추가 IDbDependencyResolver 합니다.

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 사용해야 합니다. 도구에서 사용 LoadConfiguration(Type) 중인 형식을 DbContext 알고 있는 경우 올바른 구성을 찾을 가능성이 높기 때문에 메서드를 사용해야 합니다.

LoadConfiguration(Type)

지정된 DbContext 형식과 연결된 를 DbConfiguration 검색하고 로드하려고 시도합니다. 이 메서드는 도구에서 올바른 구성이 앱 도메인에 로드되도록 하기 위한 것입니다. 도구는 속성에 액세스하기 전에 이 메서드를 DependencyResolver 사용해야 합니다.

MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

SetConfiguration(DbConfiguration)

이 앱 도메인에 대한 의 DbConfiguration Singleton instance. 이 설정은 Entity Framework 기능이 사용되기 전에 애플리케이션 시작 시 설정할 수 있으며 나중에 읽기 전용으로 처리되어야 합니다.

SetContextFactory(Type, Func<DbContext>)

에서 파생된 DbConfiguration 클래스의 생성자에서 이 메서드를 호출하여 매개 변수가 없는 공용 생성자가 없는 컨텍스트의 인스턴스를 만들 수 있도록 DbContextInfo 팩터리를 설정합니다.

SetContextFactory<TContext>(Func<TContext>)

에서 파생된 DbConfiguration 클래스의 생성자에서 이 메서드를 호출하여 매개 변수가 없는 공용 생성자가 없는 컨텍스트의 인스턴스를 만들 수 있도록 DbContextInfo 팩터리를 설정합니다.

SetDatabaseInitializer<TContext>(IDatabaseInitializer<TContext>)

에서 파생된 DbConfiguration 클래스의 생성자에서 이 메서드를 호출하여 지정된 컨텍스트 형식에 사용할 데이터베이스 이니셜라이저를 설정합니다. 데이터베이스 이니셜라이저는 지정된 DbContext 형식이 처음으로 데이터베이스에 액세스하는 데 사용될 때 호출됩니다. Code First 컨텍스트의 기본 전략은 의 CreateDatabaseIfNotExists<TContext>instance.

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

에서 파생된 DbConfiguration 클래스의 생성자에서 이 메서드를 호출하여 와 함께 Log사용할 의 DatabaseLogFormatter 형식에 대한 팩터리를 설정합니다.

SetDefaultConnectionFactory(IDbConnectionFactory)

IDbConnectionFactory 에 다른 연결 문자열이나 연결이 지정되지 않거나 에서 검색할 DbContext수 없는 경우 규칙에 따라 연결을 만드는 데 사용되는 를 설정합니다. EntityFramework NuGet 패키지가 설치될 때마다 기본 연결 팩터리가 app.config 또는 web.config 파일에 설정됩니다. 모든 구성 파일 설정에 관해서는 구성 파일에 설정된 기본 연결 팩터리는 이 메서드를 사용하여 만든 설정보다 우선합니다. 따라서 이 메서드를 호출하기 전에 구성 파일에서 설정을 제거해야 합니다. 에서 파생된 DbConfiguration 클래스의 생성자에서 이 메서드를 호출하여 사용 중인 기본 연결 팩터리를 변경합니다.

SetDefaultHistoryContext(Func<DbConnection,String,HistoryContext>)

에서 파생된 DbConfiguration 클래스의 생성자에서 이 메서드를 호출하여 에 DbMigrationsConfiguration대한 기본값 HistoryContext 을 만드는 데 사용할 대리자를 설정합니다Func<T1,T2,TResult>. 이 기본 팩터리는 에서 명시적으로 DbMigrationsConfiguration 설정된 팩터리를 사용하지 않고 메서드를 사용하여 SetHistoryContext(String, Func<DbConnection,String,HistoryContext>) 사용 중인 공급자에 대해 팩터리를 등록하지 않은 경우에만 사용됩니다.

SetDefaultSpatialServices(DbSpatialServices)

에서 파생된 DbConfiguration 클래스의 생성자에서 이 메서드를 호출하여 공간 공급자가 필요하고 공급자별 공간 공급자를 찾을 수 없을 때마다 사용되는 전역 instance DbSpatialServices 설정합니다. 일반적으로 공급자별 공간 공급자는 공급자 고정 이름을 키로 DbProviderServices 전달하기 위한 DbSpatialServices 서비스를 확인하여 반환되는 구현에서 가져옵니다. 그러나 공간 공급자가 사용할지 알 수 없으므로 및 DbGeographyDbGeometry 독립 실행형 인스턴스에서는 이 작업을 수행할 수 없습니다. 따라서 및 의 독립 실행형 인스턴스를 DbGeometryDbGeography 만들 때 전역 공간 공급자가 항상 사용됩니다.

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 클래스의 생성자에서 이 메서드를 호출하여 명시적 팩터리 집합이 없는 에 대해 지정된 공급자 DbMigrationsConfiguration 에 대해 사용자 지정된 HistoryContext 를 만들 수 있는 대리자를 설정합니다Func<T1,T2,TResult>.

SetManifestTokenResolver(IManifestTokenResolver)

에서 파생된 DbConfiguration 클래스의 생성자에서 이 메서드를 호출하여 반드시 연결을 열지 않고도 연결에서 공급자 매니페스트 토큰을 가져올 수 있는 구현 IManifestTokenResolver 을 설정합니다.

SetMetadataAnnotationSerializer(String, Func<IMetadataAnnotationSerializer>)

에서 파생된 DbConfiguration 클래스의 생성자에서 이 메서드를 호출하여 인스턴스가 나타내는 MetadataProperty 사용자 지정 주석을 EDMX XML과 직렬화할 수 있는 구현 IMetadataAnnotationSerializer 에 대한 팩터리를 설정합니다.

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 이 충분하지 않은 경우 에서 을 DbConnection 가져올 수 DbProviderFactory 있는 구현을 설정합니다.

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

DbConfiguration이 생성된 후 EF 초기화 중에 발생하지만 사용할 준비가 되도록 잠기기 직전에 발생합니다. 이 이벤트를 사용하여 구성이 잠기기 전에 등록된 서비스를 검사 및/또는 재정의합니다. 이 이벤트는 도구가 런타임에 사용되는 것과 동일한 구성을 검색하지 못할 수 있으므로 신중하게 사용해야 합니다.

적용 대상