私はSteven Sandersonの優れた本 "Pro ASP.NET MVC 2 Framework"の提案されたリポジトリパターンに従ってプロジェクトを進めています。LinqからSQLへのリポジトリパターン:多対多の関係
次の例を考えてみます。私は「製品」と「イメージ」のテーブルを持っています。両方とも、コンストラクタに新しいDataContextを作成する独自のリポジトリを持っています。今、「ImagesForProducts」という2つのエンティティ間に多対多の関係を確立したいと考えています。
ImagesForProductsエンティティ用の別個のリポジトリを作成する必要がありますか?もしそうなら、どのようにすべてのエンティティ間でDataContextを共有できますか?その場合、2つのリポジトリ(ProductsおよびImagesForProducts用)を使用してProductControllerをインスタンス化する必要があります。
myProduct.AddImage(img)を書くことができるように、自分の製品インスタンスを使用して画像にアクセスしたいと思います。しかし、ProductRepositoryを使用してデータベース内の関係をどのように維持することができますか?
全体的なアーキテクチャについてはわかりませんが、基本的なコード例を高く評価しています。
ありがとうございます!
あなたの答えをありがとう。 Linqのマッパーは、Linq関連のリポジトリでのみ使用され、私のモデルにとっては重要ではないので、私に心配していないImagesForProductsの権限を既に与えています。私の答えでわかるように、最終的には、製品インスタンスを使用してイメージを追加しないことにしました。そうすれば、私の「本当の」モデルエンティティは、データベース関連のものとは関係がありません。 – Shackles