DbContextOptionsBuilder 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
을 구성 DbContextOptions하기 위한 간단한 API 표면을 제공합니다. 데이터베이스(및 기타 확장)는 일반적으로 컨텍스트에 사용할 데이터베이스 연결(및 기타 옵션)을 구성할 수 있는 이 개체의 확장 메서드를 정의합니다.
public class DbContextOptionsBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IDbContextOptionsBuilderInfrastructure
type DbContextOptionsBuilder = class
interface IDbContextOptionsBuilderInfrastructure
Public Class DbContextOptionsBuilder
Implements IDbContextOptionsBuilderInfrastructure
- 상속
-
DbContextOptionsBuilder
- 파생
- 구현
설명
를 사용하여 DbContextOptionsBuilder 외부에서 를 재정 OnConfiguring(DbContextOptionsBuilder) 의하거나 만들고 DbContextOptions 컨텍스트 생성자에 전달하여 컨텍스트를 구성할 수 있습니다.
자세한 내용 및 예제 는 DbContextOptions 사용을 참조하세요.
생성자
DbContextOptionsBuilder() |
옵션이 설정되지 않은 클래스의 DbContextOptionsBuilder 새 instance 초기화합니다. |
DbContextOptionsBuilder(DbContextOptions) |
클래스의 새 instance DbContextOptionsBuilder 초기화하여 지정된 DbContextOptions를 추가로 구성합니다. |
속성
IsConfigured |
옵션이 구성되었는지 여부를 나타내는 값을 가져옵니다. |
Options |
구성되는 옵션을 가져옵니다. |
메서드
AddInterceptors(IEnumerable<IInterceptor>) |
컨텍스트에 등록된 인스턴스에 인스턴스를 추가 IInterceptor 합니다. |
AddInterceptors(IInterceptor[]) |
컨텍스트에 등록된 인스턴스에 인스턴스를 추가 IInterceptor 합니다. |
ConfigureLoggingCacheTime(TimeSpan) |
EF Core가 특정 고성능 경로에서 로깅 구성을 캐시하는 기간을 구성합니다. 따라서 EF Core는 잠재적으로 비용이 많이 드는 로깅 검사를 건너뛰지만 런타임 로깅 변경 내용(예: 새 DiagnosticListener 등록은 즉시 고려되지 않을 수 있음)을 의미합니다. |
ConfigureWarnings(Action<WarningsConfigurationBuilder>) |
Entity Framework에서 생성된 경고의 런타임 동작을 구성합니다. 각 경고 유형에 대한 기본 동작 및 동작을 설정할 수 있습니다. |
ConfigureWarnings(Action<WarningsConfigurationBuilder>) |
Entity Framework에서 생성된 경고의 런타임 동작을 구성합니다. 각 경고 유형에 대한 기본 동작 및 동작을 설정할 수 있습니다. |
EnableDetailedErrors(Boolean) |
저장소 쿼리 결과를 처리하는 동안 발생하는 데이터 값 예외를 처리할 때 자세한 오류를 사용하도록 설정합니다. 이러한 오류는 엔터티 속성의 잘못된 구성으로 인해 가장 자주 발생합니다. 예를 들어 속성이 'int' 형식으로 구성되었지만 저장소의 기본 데이터가 실제로 'string' 형식인 경우 데이터 값을 처리하는 동안 런타임에 예외가 생성됩니다. 이 옵션을 사용하도록 설정하고 데이터 오류가 발생하면 생성된 예외에는 오류를 생성한 특정 엔터티 속성의 세부 정보가 포함됩니다. |
EnableSensitiveDataLogging() |
애플리케이션 데이터를 예외 메시지, 로깅 등에 포함할 수 있습니다. 여기에는 엔터티 인스턴스의 속성에 할당된 값, 데이터베이스로 전송되는 명령에 대한 매개 변수 값 및 기타 데이터가 포함될 수 있습니다. 이 데이터의 민감도에 따라 적절한 보안 조치가 있는 경우에만 이 플래그를 사용하도록 설정해야 합니다. |
EnableSensitiveDataLogging(Boolean) |
애플리케이션 데이터를 예외 메시지, 로깅 등에 포함할 수 있습니다. 여기에는 엔터티 인스턴스의 속성에 할당된 값, 데이터베이스로 전송되는 명령에 대한 매개 변수 값 및 기타 데이터가 포함될 수 있습니다. 이 데이터의 민감도에 따라 적절한 보안 조치가 있는 경우에만 이 플래그를 사용하도록 설정해야 합니다. |
EnableServiceProviderCaching(Boolean) |
내부 서비스 공급자의 캐싱을 사용하거나 사용하지 않도록 설정합니다. 캐싱을 사용하지 않도록 설정하면 성능에 큰 영향을 미칠 수 있으며 테스트 격리를 위해 많은 서비스 공급자를 빌드하는 테스트 시나리오에서만 사용해야 합니다. |
EnableThreadSafetyChecks(Boolean) |
동시성 검색을 사용하지 않도록 설정합니다. 이 검색은 instance 여러 번 잘못된 동시 사용 DbContext 사례를 검색하고 정보 제공 예외가 throw됩니다. 이렇게 하면 성능이 약간 향상되지만 instance 동시에 사용되는 경우 DbContext 동작이 정의되지 않고 프로그램을 예측할 수 없는 방식으로 실패할 수 있습니다. |
LogTo(Action<String>, Func<EventId,LogLevel,Boolean>, Nullable<DbContextLoggerOptions>) |
제공된 사용자 지정 필터 대리자를 통해 필터링된 이벤트를 기록합니다. 필터는 메시지를 기록하려면 true를 반환하고, 로그에서 필터링하려면 false를 반환해야 합니다. |
LogTo(Action<String>, IEnumerable<EventId>, LogLevel, Nullable<DbContextLoggerOptions>) |
제공된 작업을 사용하여 지정된 이벤트를 기록합니다. 예를 들어 를 사용하여 |
LogTo(Action<String>, IEnumerable<String>, LogLevel, Nullable<DbContextLoggerOptions>) |
제공된 작업을 사용하여 지정된 범주의 모든 이벤트를 기록합니다. 예를 들어 를 사용하여 |
LogTo(Action<String>, LogLevel, Nullable<DbContextLoggerOptions>) |
제공된 작업을 사용하여 로그합니다. 예를 들어 를 사용하여 |
LogTo(Func<EventId,LogLevel,Boolean>, Action<EventData>) |
사용자 지정 필터 대리자에 의해 필터링된 사용자 지정 로거 대리자에 이벤트를 기록합니다. 필터는 메시지를 기록하려면 true를 반환하고, 로그에서 필터링하려면 false를 반환해야 합니다. |
ReplaceService<TService,TCurrentImplementation,TNewImplementation>() |
서비스 계약의 특정 구현에 대한 내부 Entity Framework 구현을 다른 구현으로 바꿉니다. |
ReplaceService<TService,TImplementation>() |
서비스 계약의 모든 내부 Entity Framework 구현을 다른 구현으로 대체합니다. |
UseApplicationServiceProvider(IServiceProvider) |
IServiceProvider 애플리케이션 서비스를 가져올 을 설정합니다. 이 작업은 'AddDbContext' 또는 'AddDbContextPool'을 사용할 때 자동으로 수행되므로 이 메서드를 호출해야 하는 경우가 드뭅니다. |
UseInternalServiceProvider(IServiceProvider) |
IServiceProvider 컨텍스트가 모든 서비스를 resolve 되도록 설정합니다. EF는 서비스 공급자가 지정되지 않은 경우 서비스 공급자를 만들고 관리합니다. |
UseLoggerFactory(ILoggerFactory) |
이 컨텍스트에서 ILoggerFactory 수행하는 로깅에 대한 인스턴스를 만드는 ILogger 데 사용할 을 설정합니다. |
UseMemoryCache(IMemoryCache) |
이 컨텍스트에서 IMemoryCache 쿼리 캐싱에 사용할 을 설정합니다. |
UseModel(IModel) |
컨텍스트에 사용할 모델을 설정합니다. 모델이 설정된 경우 는 OnModelCreating(ModelBuilder) 실행되지 않습니다. |
UseQueryTrackingBehavior(QueryTrackingBehavior) |
컨텍스트에 대해 실행되는 LINQ 쿼리에 대한 추적 동작을 설정합니다. 변경 내용 추적을 사용하지 않도록 설정하면 각 엔터티 instance 대한 변경 내용 추적 설정 오버헤드를 방지하므로 읽기 전용 시나리오에 유용합니다. 엔터티 인스턴스를 조작하고 를 사용하여 SaveChanges()해당 변경 내용을 데이터베이스에 유지하려는 경우 변경 내용 추적을 사용하지 않도록 설정해서는 안 됩니다. |
UseRootApplicationServiceProvider() |
범위가 지정된 애플리케이션 서비스 공급자에서 루트 IServiceProvider 를 확인합니다. 루트 공급자를 사용하여 싱글톤 내부 서비스에서 싱글톤 애플리케이션 서비스를 가져올 수 있습니다. |
UseRootApplicationServiceProvider(IServiceProvider) |
싱글톤 내부 서비스에서 싱글톤 애플리케이션 서비스를 가져올 수 있는 루트 IServiceProvider 를 설정합니다. |
명시적 인터페이스 구현
IDbContextOptionsBuilderInfrastructure.AddOrUpdateExtension<TExtension>(TExtension) |
지정된 확장을 옵션에 추가합니다. 동일한 형식의 기존 확장이 이미 있는 경우 대체됩니다. |
확장 메서드
적용 대상
Entity Framework