次の機能を実装するwpfアプリケーションを構築しています。
- ユーザー入力を取得し、データベースからデータを読み取る
- それにいくつかの計算を行います
- 複数のタイプのビューでユーザーにそれを紹介し、変更をデータベースに書き込みます
提案されたアーキテクチャ:データベース->エンティティフレームワーク->リポジトリ->ビジネスロジック->データサービス-> ViewModel
このアーキテクチャを使用する理由:アプリケーション(複数のビュー)と複数のデータベースに存在する複数のシナリオ。したがって、私は抽象化のために真ん中にリポジトリを使用する用意があります。
注意点の1つは、リポジトリが実装されている場合、コンテキストは長期間有効であることです。これを克服するために、コンテキストを作成し、それらを各クラッドメソッドのusing()ブロックに配置しても問題ありませんか?
別のアプローチを提案すること自由に感じなさい。