다음을 통해 공유


DbModelBuilder 클래스

정의

DbModelBuilder는 CLR 클래스를 데이터베이스 스키마에 매핑하는 데 사용됩니다. EDM(엔터티 데이터 모델) 모델을 빌드하는 이 코드 중심 접근 방식을 'Code First'라고 합니다.

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId="Db")]
public class DbModelBuilder
public class DbModelBuilder
type DbModelBuilder = class
Public Class DbModelBuilder
상속
DbModelBuilder
특성

설명

DbModelBuilder는 일반적으로 DbContext.OnModelCreating(DbModelBuilder) 을 재정의하여 모델을 구성하는 데 사용됩니다. DbContext와 독립적으로 DbModelBuilder를 사용하여 모델을 빌드한 다음 또는 ObjectContextDbContext 생성할 수도 있습니다. 그러나 워크플로가 더 직관적이고 생성된 모델 캐싱과 같은 일반적인 작업을 처리하므로 에서 OnModelCreating DbContext 을 사용하는 것이 좋습니다. 모델을 구성하는 형식은 DbModelBuilder에 등록되며 선택적 구성은 클래스에 데이터 주석을 적용하거나 흐름 스타일 DbModelBuilder API를 사용하여 수행할 수 있습니다. Build 메서드가 호출되면 규칙의 집합이 실행되어 초기 모델을 검색합니다. 이러한 규칙은 기본 키와 같은 모델의 측면을 자동으로 검색하고 클래스에 지정된 모든 데이터 주석도 처리합니다. 마지막으로 DbModelBuilder API를 사용하여 수행된 모든 구성이 적용됩니다. DbModelBuilder API를 통해 수행되는 구성은 데이터 주석보다 우선적으로 적용되며, 이 주석은 기본 규칙보다 우선합니다.

생성자

DbModelBuilder()

DbModelBuilder 클래스의 새 인스턴스를 초기화합니다. 초기 모델을 검색하는 프로세스는 컴퓨터에 설치된 최신 버전의 Entity Framework에 포함된 규칙 집합을 사용합니다.

DbModelBuilder(DbModelBuilderVersion)

특정 규칙 집합을 사용하여 초기 모델을 검색하는 클래스의 DbModelBuilder 새 instance 초기화합니다.

속성

Configurations

ConfigurationRegistrar 이 DbModelBuilder에 대한 를 가져옵니다. 등록자는 파생 엔터티 및 복합 형식 구성이 이 작성기를 사용하여 등록될 수 있도록 합니다.

Conventions

규칙을 처리하는 이 DbModelBuilder의 설정에 대한 액세스를 제공합니다.

메서드

Build(DbConnection)

이 작성기를 DbModel 사용하여 수행된 구성에 따라 을 만듭니다. 생성된 모델의 데이터베이스 계층에 영향을 미치므로 사용되는 데이터베이스 공급자를 확인하는 데 연결이 사용됩니다.

Build(DbProviderInfo)

이 작성기를 DbModel 사용하여 수행된 구성에 따라 을 만듭니다. 생성된 모델의 데이터베이스 계층에 영향을 미치기 때문에 공급자 정보를 지정해야 합니다. SqlClient의 경우 고정 이름은 'System.Data.SqlClient'이고 매니페스트 토큰은 버전 연도(예: '2005', '2008' 등)입니다.

ComplexType<TComplexType>()

모델에서 형식을 복합 형식으로 등록하고 복합 형식을 구성하는 데 사용할 수 있는 개체를 반환합니다. 이 메서드는 여러 줄의 구성을 수행하기 위해 동일한 형식에 대해 여러 번 호출할 수 있습니다.

Entity<TEntityType>()

엔터티 형식을 모델의 일부로 등록하고 엔터티를 구성하는 데 사용할 수 있는 개체를 반환합니다. 이 메서드는 여러 줄의 구성을 수행하기 위해 동일한 엔터티에 대해 여러 번 호출할 수 있습니다.

Equals(Object)

DbModelBuilder는 CLR 클래스를 데이터베이스 스키마에 매핑하는 데 사용됩니다. EDM(엔터티 데이터 모델) 모델을 빌드하는 이 코드 중심 접근 방식을 'Code First'라고 합니다.

GetHashCode()

DbModelBuilder는 CLR 클래스를 데이터베이스 스키마에 매핑하는 데 사용됩니다. EDM(엔터티 데이터 모델) 모델을 빌드하는 이 코드 중심 접근 방식을 'Code First'라고 합니다.

GetType()

현재 인스턴스의 Type을 가져옵니다.

HasDefaultSchema(String)

기본 데이터베이스 스키마 이름을 구성합니다. 이 기본 데이터베이스 스키마 이름은 명시적으로 구성된 스키마 이름이 없는 데이터베이스 개체에 사용됩니다.

Ignore(IEnumerable<Type>)

모델에서 지정된 형식을 제외합니다. 초기 모델 검색을 수행하는 동안 규칙에 의해 추가된 모델에서 형식을 제거하는 데 사용됩니다.

Ignore<T>()

모델에서 형식을 제외합니다. 초기 모델 검색을 수행하는 동안 규칙에 의해 추가된 모델에서 형식을 제거하는 데 사용됩니다.

Properties()

모델의 모든 속성에 적용되는 간단한 규칙의 구성을 시작합니다.

Properties<T>()

모델에서 지정된 형식의 모든 기본 속성에 적용되는 간단한 규칙의 구성을 시작합니다.

RegisterEntityType(Type)

엔터티 형식을 모델의 일부로 등록합니다.

ToString()

DbModelBuilder는 CLR 클래스를 데이터베이스 스키마에 매핑하는 데 사용됩니다. EDM(엔터티 데이터 모델) 모델을 빌드하는 이 코드 중심 접근 방식을 'Code First'라고 합니다.

Types()

모델의 모든 엔터티 및 복합 형식에 적용되는 간단한 규칙의 구성을 시작합니다.

Types<T>()

제네릭 인수로 지정된 형식을 상속하거나 구현하는 모델의 모든 엔터티 및 복합 형식에 적용되는 간단한 규칙의 구성을 시작합니다. 이 메서드는 모델의 일부로 형식을 등록하지 않습니다.

적용 대상