Entity Framework Code First CTP5 リリース
Entity Framework Code Firstの最新のCTP5がリリースされています。
機能的には、これで大分出揃ったという感じでしょう。
これが最後のCTPになるようです。また、2011年1月~3月くらいにはリリース予定です。
英語では既に様々な機能を紹介したPostがあるので参考にしてください。このBlogでもご紹介する予定です。
Model & Database First with DbContext
Code First Walkthrough
Code First Fluent API Samples
Looking at EF4 CTP5 in Parts: Part 1 - A New T4 Template
Looking at EF4 CTP5 in Parts: Part 2–Internal Validation
Looking at EF4 CTP5 in Parts: Part 3–Easy Access to In-Memory Entities
Looking at EF4 CTP5 in Parts: Part 3–Easy Access to In-Memory Entities
ちなみに変更点は
・アセンブリ名が変更になりました。
Microsoft.Data.Entity.CTP.dll –> EntityFramework.dll
・既存DBをコードファーストで利用する時(正確にはDBファースト)Database InitializerをOFFにする必要がなくなった。
・DbContextのメンバーにprotected ObjectContextが含まれていたが含まれなくなった。IObjectContextAdapterを使ってObjectContextを取得できる。
・クラス名が変更
CTP4 Name | CTP5 Name |
Database | System.Data.Entity.Database.DbDatabase |
RecreateDatabaseIfModelChanges | System.Data.Entity.Database.DropCreateDatabaseIfModelChanges |
AlwaysRecreateDatabase | System.Data.Entity.Database.DropCreateDatabaseAlways |
CreateDatabaseIfNotExists | System.Data.Entity.Database.CreateDatabaseIfNotExists |
SqlConnectionFactory | System.Data.Entity.Database.SqlConnectionFactory |
SqlCeConnectionFactory | System.Data.Entity.Database.SqlCeConnectionFactory |
追加機能は
DbContext
・モデルファースト、DBファーストからDbContextの利用
・アノテーションをベースとした保存時のバリデーション
・Change Tracker API
変更管理が可能になります。
・No-Tracking クエリのサポート
・WPFやWinFormのデータバインディング強化
・遅延ロードのサポート
・DbContext.DatabaseのSqlQuery、SqlCommandを使うと、ネイティブT-SQLの実行が可能
・同時実行制御におけるエラー制御の改善
Code First
・フルでアノテーションをサポート
KeyAttribute
StringLengthAttribute
MaxLengthAttribute
ConcurrencyCheckAttribute
RequiredAttribute
TimestampAttribute
ComplexTypeAttribute
ColumnAttribute
TableAttribute
InversePropertyAttribute
ForeignKeyAttribute
DatabaseGeneratedAttribute
NotMappedAttribute
・流れるようなAPI の改善
コードがすっきり。
テーブルとカラムマッピングの単純化
クラスとプロパティを無視する機能
・Pluggable Conventions
詳細はまた次回