DbConfiguration.SetMigrationSqlGenerator メソッド
[このページは、Entity Framework 6 に関するページです。最新バージョンは、'Entity Framework' NuGet パッケージとして入手できます。Entity Framework の詳細については、msdn.com/data/ef を参照してください。]
DbConfiguration から派生したクラスのコンストラクターからこのメソッドを呼び出して、指定した不変名が表すプロバイダーで使用する MigrationSqlGenerator を登録します。
名前空間: System.Data.Entity
アセンブリ: EntityFramework (EntityFramework.dll 内)
構文
'宣言
Protected Friend Sub SetMigrationSqlGenerator ( _
providerInvariantName As String, _
sqlGenerator As Func(Of MigrationSqlGenerator) _
)
'使用
Dim providerInvariantName As String
Dim sqlGenerator As Func(Of MigrationSqlGenerator)
Me.SetMigrationSqlGenerator(providerInvariantName, _
sqlGenerator)
protected internal void SetMigrationSqlGenerator(
string providerInvariantName,
Func<MigrationSqlGenerator> sqlGenerator
)
protected public:
void SetMigrationSqlGenerator(
String^ providerInvariantName,
Func<MigrationSqlGenerator^>^ sqlGenerator
)
member SetMigrationSqlGenerator :
providerInvariantName:string *
sqlGenerator:Func<MigrationSqlGenerator> -> unit
function SetMigrationSqlGenerator(
providerInvariantName : String,
sqlGenerator : Func<MigrationSqlGenerator>
)
パラメーター
- providerInvariantName
型 : System.String
このジェネレーターを使用する対象となる ADO.NET プロバイダーの不変名。
- sqlGenerator
型 : System.Func<MigrationSqlGenerator>
呼び出されるたびに SQL ジェネレーターの新しいインスタンスを返すデリゲート。
解説
このメソッドは、通常、Code First Migrations 用に関連付けられた SQL ジェネレーターを登録するためにプロバイダーによって使用されます。 プロジェクトに Migrations の構成がない場合や、Migrations が明示的に使用されていない場合でも、EF で Migrations のパイプラインを使用してデータベースを作成できるため、これは DbMigrationsConfiguration でのジェネレーターの設定とは異なります。 このメソッドは、Entity Framework に構成を追加するための便利で検出可能な方法として用意されています。 内部的には、AddDependencyResolver を使用して MigrationSqlGenerator の適切なリゾルバーを追加する場合と同じように機能します。 つまり、必要に応じて、カスタム リゾルバーまたは制御の反転コンテナーによってサポートされるリゾルバーを使用して同じ機能を実現できます。