MVC4 webapp + EntityFramwork5 の 3 層アーキテクチャを開発しています。レイヤーを分離したいので、たとえば、EFを使用していることをDALだけが知っています。
実際、私はそれを管理するための多くのクラスを持っています:
ダル
- エンティティ POCO
- エンティティ データ コンテキスト : DbContext
- エンティティ リポジトリ
BL
- エンティティ ビューモデル
- エンティティ サービス (エンティティ リポジトリのインスタンス化)
ウェブ
- エンティティ コントローラ (エンティティ サービスのインスタンス化)
これは機能していますが、維持するのは非常に困難です。DAL のエンティティ リポジトリを削除し、DataContext を直接使用することを考えていました (私が間違っていなければ、すべての DbContext がリポジトリと作業単位になるように設計されているため)。私のBLのEntityFramework.dll。大きな問題ではありませんが、それが最良の選択であるかどうかはわかりません。
何かアドバイス?
(十分な情報を提供できれば幸いです。さらに必要な場合は、お問い合わせください)