私は Entity Framework とデータベース ファースト アプローチを初めて使用します。誰でも私を助けてもらえますか?
これがケースです:
プロパティのみを持つ、クリーンで通常のドメイン クラス (Person) があります。このクラスは、エンティティ フレームワークやデータ アクセス層に属するその他のものへの参照なしで、ドメイン クラスのみを含む VS プロジェクトで定義されます。
データベース テーブル (tblPerson) もあります。そのための EDMX を作成し、DbContext Generator を使用してそのための POCO クラスを作成しました。
エンティティ フレームワークの参照をドメイン クラスを持つプロジェクトから分離しておくことが重要であり、依存性注入と組み合わせたリポジトリ パターンを使用したいと考えています。
質問は:
Entity Framework POCO クラスを既存のドメイン クラスに「マップ」するにはどうすればよいですか? それらは同じ特性を持っています。プロキシ、バディ クラスなどについて読んだことがありますが、良い例は見つかりませんでした。
助けてください。
ドメインモデルクラスが次のようになっているとしましょう (単なる例):
public class Person
{
public int Id { get; set; }
public string Name { get; set; }
}
データベーステーブルには同じ列があります:
ID (int、null 以外、主キー) 名前 (nvarchar(50)、null 以外)
アップデート:
わかりました、解決策を見つけました。Ladislav Mrnka が提案し、ObjectContext から派生したことを行いました。これがどのように行われるかを説明するページです: Entity Framework 4.0 – Part4: 独自の POCO を使用する方法