私は最初の設計上の決定に疑問を抱き始めました。どこを見ても、アクセスレイヤーをMVCプロジェクトにダンプするだけのMVCに関するチュートリアルがあります。(これは私が学んだすべてに反します)
- BarRepo:APIへのアクセスを処理します。
- FooRepo:データベースへのアクセスを処理します(EFを使用)。
- FooBarHandler:2つのリポジトリからのデータをコントローラーに役立つデータに結合します。
- コントローラー:コントローラー、特別なものはありません。
写真でわかるように、私は各部分を独自のプロジェクトに分割し、緩い結合を取得しようとしました。そのため、データベースレイヤーなどからEntityFrameworkクラスを送信しません。しかし、私は少し漬物に出くわしました。フェッチされるデータ量が非常に多くなり、フロントエンドで目立つようになったため、ページングを導入する必要がありました。だから私はこのチュートリアルに従いました。私の「問題」は、MVC、Logic、およびDatabaseプロジェクトがPagedListに依存しているため、物事がそれほどきれいで光沢がなくなっていることです。
だから私の質問はあなたが何をしただろうか?