2009-05-25 21 views
1

私のプロジェクトには既存のモデルがあります。私はEntity Frameworkに切り替えたいですが、私のモデルをEFから生成されたモデルに置き換えたくありません。既存のモデルでADO.NET Entity Frameworkを使用できますか?

さらに、私のモデルは自分のデータベーススキーマと大きく異なるので、EFから生成されたモデルを使用し、必要なすべてのリファクタリングを行う機会は非常に難しいようです。

既存のドメイン、既存のデータベースを持ち、EFを使用してO/RMレイヤを含めるためにドメインにメソッドを追加する方法はありますか?

答えて

1

.NET 3.5SP1では、答えは大きな脂肪 "いいえ"私は恐れています。 .NET 4.0では、POCOのサポートが導入されています(まだパブリックベータ版では試していませんが、あなた自身のオブジェクトを使用できるようになります)。

外部マッピングファイルを使用して(そしてDataContextオブジェクトを指定して)LINQ-to-SQLでPOCO(独自のオブジェクトを使用)を行うことができますが、デフォルトでコード生成を使用したい)。

今のところ、おそらくNHibernate(と同様の)があなたの最良の選択です。

1

MSDNサブスクライバーの場合は、beta releaseのEntity Frameworkをダウンロードできます。 これは、あなたが参照しているものであり、EF 1.0が重い批判を受けたPOCOオブジェクトをサポートしています。

ADO.NETデザインチームは、ちょうど最近、@POCO in the Entity Framework: Part 1 - The Experienceを投稿しました。

私はEFP 4.0アダプタを使用した経験から、EF 4.0をお勧めします。

また、いくつかのクールなn層シナリオをサポートしています。つまり、オブジェクトを変更して返すことができる別のレイヤーに渡すことができます。そして、他の層はエンティティフレームワークについて何も知る必要がないので、懸念をきれいに分けることができます。

関連する問題