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構築することもできます。 ただし、推奨される方法は、ワークフローがより直感的で、作成されたモデルのキャッシュなどの一般的なタスクを処理するため、 で DbContext OnModelCreating を使用することです。 モデルを形成する型は DbModelBuilder に登録され、オプションの構成は、クラスにデータ注釈を適用するか、Fluent スタイルの DbModelBuilder API を使用して実行できます。 Build メソッドが呼び出されると、初期モデルを検出するために一連の規約が実行されます。 これらの規約は、主キーなどのモデルの要素を自動的に検出し、クラスに指定されたデータ注釈も処理します。 最後に、DbModelBuilder API を使用して実行された構成が適用されます。 DbModelBuilder API を使用して行われる構成は、データ注釈よりも優先され、既定の規則よりも優先されます。

コンストラクター

DbModelBuilder()

DbModelBuilder クラスの新しいインスタンスを初期化します。 初期モデルを検出するプロセスでは、コンピューターにインストールされている Entity Framework の最新バージョンに含まれる一連の規則が使用されます。

DbModelBuilder(DbModelBuilderVersion)

特定の規則セットを使用して初期モデルを DbModelBuilder 検出する クラスの新しいインスタンスを初期化します。

プロパティ

Configurations

この DbModelBuilder の を ConfigurationRegistrar 取得します。 レジストラーを使用すると、派生エンティティ型と派生複合型の構成をこのビルダーに登録できます。

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>()

ジェネリック引数で指定された型を継承または実装するモデル内のすべてのエンティティと複合型に適用される軽量規則の構成を開始します。 このメソッドは、型をモデルの一部として登録しません。

適用対象