EF6 Alpah 1 が公開されています

MSは相変わらず結構なリソースを投入して Entity Framework(EF) の強化を継続していますね。

ただ米国ではやる気を感じるのですが、日本ではあまり情報発信が出来ていないようですみません。

MCAホルダーの福井さんにも怒られました・・・

 

さて、2012/11時点で正式版としてリリースされているのはEF5です。以前のポストでさらっとご紹介しました。

そして先日、EF6 Alpha 1 がNuGetで公開されました!

https://nuget.org/packages/entityframework (Thursday, October 25, 2012)

まだ、a very early preview らしく、significantly prior to the final release of EF6 なので、不具合がいろいろとあるかもしれませんが、広い心でご利用ください。

実プロジェクトでは使わないでくださいねw

 

EF6では大幅に機能強化されています。さらっと・・・

Async Query and Save 

タスクベースの非同期パターンに対応しました。ウォークスルーもあるのでトライしてみてください。さらなる詳細はこちらです。

 

Custom Code First Conventions

ルールセット(プライマリーキー、テーブル名など)を指定できる Convention という機能がありました。 これに新しく独自のルールを定義できるCustom Conventionが使えるようになっています。 ウォークスルー あるので試してみてください。さらなる詳細はこちらを参考にしてください。

 

Multi-Tenant Migrations

以前はマイグレーションを行うときに、1つのDBインスタンスに対して1つのモデル(DbContext) で管理する必要がありました。EF6ではで1つのDBインスタンスに対して、複数のモデルを扱えるようになっています。さらなる詳細はこちら.

 

Configurable Migrations History Table

以前からマイグレーションのログを収集する機能を持っていましたが、これがカスタマイズできるようになっています。さらなる詳細はこちら.

 

Code-Based Configuration

System.Data.Entity.Config.DbConfiguration を使った Config を実装出来るようになっています。サンプルはこちら。 詳細はこちら.

 

Dependency Resolution

サービス ロケーターパターンをサポートしました。そのためのインタフェース IDbDependencyResolver が追加されています。詳細はこちら、サービスの一覧はこちら.

 

Updated Provider Model

以前、EFのコアコンポーネントのいくつかは.NET Framework本体に含まれていました。EF6 ではそれらが NuGet パッケージに含まれます。それに伴って、より短いスパンで機能強化してデリバリが可能になります。しかしながら、特に 3rd Party が提供しているEFのProviderには少なからず影響があるのでドキュメントを作りました。利用可能なプロバイダはこちら.

 

Enums, Spatial and Better Performance on .NET 4.0

EF Nugetを使うことで、.NET 4.0でも Enum、Spatial が使えるようになっています。パフォーマンスもアップ!

 

 

 

今回は表面的なところだけですが、もう少し検証してご紹介していきたいと思います。

使った方はフィードバックお願いします。