Data Provider for .NET Guide (v11)

ADO.NET Entity Framework での Code First Migrations の使用

Entity Framework 4.3 以降では Code First Migrations をサポートしています。これは、POCO クラスを削除して再作成しなくても、このクラスを反映するようにデータベース スキーマを更新することを可能にします。

移行は、モデルの変更に従って、データベース スキーマを増分で更新できるようにします。データベースに対する各変更セットは、移行として知られるコード ファイルで表されます。移行は、通常、タイムスタンプを使用して管理され、データベース内のテーブルは、どの移行がデータベースに適用されたかを追跡します。

Code First Migrations の実装は型マッピングの変更を必要とします。詳細については、データ型および関数のマッピングを参照してください。

Progress DataDirect Connect for ADO.NET Pervasive データ プロバイダーを使用して Code First Migrations を実装するには、以下の追加設定を実行する必要があります。

  1. プロジェクト内の DDTek.Pervasive.Entity アセンブリに参照を追加します。
  2. Configuration Classの変更を継承し、Configuration Class のコンストラクターで SQL Generator を登録します。次のことを行います。
    1. PervasiveDbMigrationsConfiguration <TContext> から Configuration Class を継承します。たとえば、次のようにします。
      internal sealed class Configuration: 
      PervasiveDbMigrationsConfiguration<%Context Name%> 
      
    2. Class Generator を登録します。

パッケージ マネージャー コンソールを使用して移行を有効にした後、configuration.cs ファイルの追加設定に加えて、app.config または configuration.cs ファイルのいずれかで接続文字列を指定します。ただし、接続文字列app.config ファイルに指定する場合は、接続文字列コンテキストの名前が同じであるようにしてください。

接続文字列app.config ファイルに指定する場合は、次の構文を使用して、app.config ファイルで SQL Generator を登録します。

SetSqlGenerator("DDTek.Pervasive", new 
DDTek.Pervasive.Entity.Migrations.PervasiveEntityMigrationSqlGenerator()); 

configuration.csSQL Generator を登録するには、次の構文を使用します。

SetSqlGenerator(connectionInfo.GetInvariantName(), new 
PervasiveEntityMigrationSqlGenerator()); 

Code First および Model First のサポート

ADO.NET Entity Framework での列挙型の使用