私はEntity Framework 6データベースファーストを使用しています。プロジェクトを変換してオニオン アーキテクチャを実装し、関心の分離を改善しています。多くの記事を読み、多くのビデオを見てきましたが、ソリューションの構造を決定する際にいくつか問題がありました。
Core、Infrastructure、Web & Tests の 4 つのプロジェクトがあります。
私が学んだことから、.edmx ファイルは "Infrastructure" フォルダーの下に配置する必要があります。ただし、リポジトリと作業単位のパターンを使用して EF のデカップリングを支援し、依存性注入を使用することについても読んだことがあります。
これが言われていると:
モデル内のすべてのエンティティに対して、CORE の下にリポジトリ インターフェイスを作成する必要がありますか? もしそうなら、巨大なデータベースでこれをどのように維持しますか? 私は automapper を調べましたが、IEnumerables と IQueryables を提示する問題が見つかりましたが、これを実行する必要がある拡張機能が利用可能です。このルートをさらに深く試すことはできますが、最初に連絡を取りたいです。
別の方法として、edmx をインフラストラクチャに残し、エンティティの .tt T4 ファイルを CORE に移動する必要がありますか? これは、密結合または適切な解決策を示していますか?
あなたが提供する提案で、一般的なリポジトリインターフェースはうまく機能しますか? それとも、EF6 は既にリポジトリと UoW パターンの問題を解決しているでしょうか?
私の質問をご覧いただきありがとうございます。代替の回答も提示してください。
ここで同様の投稿が見つかりましたが、回答はありませんでした: EF6 and Onion architecture - database first and without Repository pattern