次の方法で共有


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

Entity Framework で IDbDependencyResolver サービスの依存関係を解決するために使用されている を取得します。

メソッド

AddDefaultResolver(IDbDependencyResolver)

Entity Framework で必要な依存関係を解決するために使用されるリゾルバーの責任チェーンにインスタンスを追加IDbDependencyResolverするには、 からDbConfiguration派生したクラスのコンストラクターからこのメソッドを呼び出します。 AddDependencyResolver メソッドとは異なり、このメソッドはリゾルバーを責任チェーンの下部に配置し、他の競合回避モジュールで解決できなかった依存関係の解決にのみ使用されるようにします。

AddDependencyResolver(IDbDependencyResolver)

Entity Framework で必要な依存関係を解決するために使用されるリゾルバーの責任チェーンにインスタンスを追加IDbDependencyResolverするには、 からDbConfiguration派生したクラスのコンストラクターからこのメソッドを呼び出します。

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)

指定DbContextされた型に関連付けられている をDbConfiguration検出して読み込もうとします。 このメソッドは、適切な構成がアプリ ドメインに確実に読み込まれるように、ツールで使用することを目的としています。 ツールでは、 プロパティにアクセスする前に、このメソッドを使用する 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>)

で使用Logする の型のファクトリを設定するには、 から派生したクラスのDatabaseLogFormatterコンストラクターからDbConfigurationこのメソッドを呼び出します。

SetDefaultConnectionFactory(IDbConnectionFactory)

他の IDbConnectionFactory 接続文字列または接続が に指定されていない場合、または によって検出できる場合に、規則によって DbContext接続を作成するために使用される を設定します。 EntityFramework NuGet パッケージがインストールされるたびに、既定の接続ファクトリが app.config または web.config ファイルに設定されることに注意してください。 すべての構成ファイル設定に関しては、構成ファイル内の既定の接続ファクトリ セットが、このメソッドで行われた設定よりも優先されます。 したがって、このメソッドを呼び出す前に、設定を構成ファイルから削除する必要があります。 から派生した DbConfiguration クラスのコンストラクターからこのメソッドを呼び出して、使用されている既定の接続ファクトリを変更します。

SetDefaultHistoryContext(Func<DbConnection,String,HistoryContext>)

から派生したDbConfigurationクラスのコンストラクターからこのメソッドを呼び出して、Func<T1,T2,TResult>任意DbMigrationsConfigurationの の の既定値HistoryContextの作成に使用されるデリゲートを設定します。 この既定のファクトリは、 で DbMigrationsConfiguration ファクトリが明示的に設定されていない場合、および メソッドを使用してプロバイダーに対してファクトリが登録されていない場合にのみ使用 SetHistoryContext(String, Func<DbConnection,String,HistoryContext>) されます。

SetDefaultSpatialServices(DbSpatialServices)

から派生した DbConfiguration クラスのコンストラクターからこのメソッドを呼び出して、空間プロバイダーが必要であり、プロバイダー固有の DbSpatialServices 空間プロバイダーが見つからないときに常に使用される のグローバル インスタンスを設定します。 通常、プロバイダー固有の空間プロバイダーは、プロバイダーの不変名を DbProviderServices キーとして渡すための DbSpatialServices サービスを解決することによって返される実装から取得されます。 ただし、 のスタンドアロン インスタンスDbGeometryDbGeographyでは機能しません。これは、空間プロバイダーが使用することを認識できないためです。 したがって、 と DbGeography グローバル空間プロバイダーのDbGeometryスタンドアロン インスタンスを作成する場合は、常に が使用されます。

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>設定します。これにより、明示的なファクトリ セットを持たないすべてのDbMigrationsConfigurationプロバイダーに対して、指定されたプロバイダー用にカスタマイズされた HistoryContext を作成できます。

SetManifestTokenResolver(IManifestTokenResolver)

から派生した DbConfiguration クラスのコンストラクターからこのメソッドを呼び出して、 の IManifestTokenResolver 実装を設定します。これにより、接続を必ずしも開かずに、プロバイダー マニフェスト トークンを接続から取得できます。

SetMetadataAnnotationSerializer(String, Func<IMetadataAnnotationSerializer>)

から派生した DbConfiguration クラスのコンストラクターからこのメソッドを呼び出して、 の実装 IMetadataAnnotationSerializer 用のファクトリを設定します。これにより、インスタンスで表されるカスタム注釈を EDMX XML との間で MetadataProperty シリアル化できます。

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 の初期化中に発生します。 このイベントを使用して、構成がロックされる前に登録されたサービスを検査またはオーバーライドします。 このイベントは、ツールが実行時に使用されるのと同じ構成を検出できない可能性があるため、慎重に使用する必要があることに注意してください。

適用対象