Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
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 が使えるようになっています。パフォーマンスもアップ!
今回は表面的なところだけですが、もう少し検証してご紹介していきたいと思います。
使った方はフィードバックお願いします。