私のasp.net mvc 3アプリケーションでは、私はリポジトリのパターンを使用しています。 私は3つのエンティティ、会社、国、都市を持っています。それぞれに独自のリポジトリがあります。会社の事業体には、FoundedCountryおよびFoundedCityの外部キーがあります。 今、私は会社の詳細を表示したいと考えています。このビューでは、会社の詳細、FoundedCountryの名前、FoundedCityの名前を表示したいと思います。私の意見では、JOINクエリの一種でこれを処理する必要があります。しかし、私はリポジトリのパターンでこれを達成する方法に固執しています。このJOINをリポジトリパターンで処理するにはどうすればよいですか?リポジトリパターンを使用してクロステーブルをクエリするにはどうすればよいですか?
ありがとうございます。
"これは、テーブルの周りにリポジトリを作成しないことを意味しますそれは目的をかなり凌駕する)。 私が知る限り、各エンティティのリポジトリを作成する必要があります。 あなたのコメントから、複雑なクエリを処理する別のリポジトリを追加する必要があると思います。右? – SherleyDev
いいえ:)各エンティティのリポジトリを作成する必要はありません。リポジトリは、基本的にアプリケーションの残りの部分に関連するすべてのデータベースを隠します。リポジトリ内でエンティティ、EFまたはNhibernateを使用する場合は問題ありません。リポジトリは、あなたのケースではオブジェクトを内部的に使用し、アプリケーションが理解しているオブジェクトを返します。エンティティ自体はすでにリポジトリで使用されている抽象化です。 – MikeSW
以下のチュートリアルでは、「このチュートリアルでは、各エンティティタイプのリポジトリクラスを実装します。私はそれに従っていた。 http://www.asp。net/mvc/tutorials/getting-started-with-ef-using-mvc/asp-net-mvcアプリケーションのリポジトリとユニットの作業パターンの実装 – SherleyDev