この投稿はin MVC/MVP/MVPC where do you put your business logic?と似ていますが、詳細を探しています。私は、ビジネスロジックの大部分が存在すべき場所としてModelに買収しました。しかし、モデルでは、アプリケーションの状態管理、データの永続性、リポジトリ、データ転送オブジェクト、その他の可能性について、私が理解している限り、内部で多くのことが起こっています。MVC/MVP/MVVM - ビジネスロジックを構成する方法
私は超複雑なビジネスルールを持つアプリケーションを持っています。ユーザーがビュー内で特定のアクションを実行しようとすると、そのアクションを許可するかどうか、またはユーザーに追加情報の入力を求めなければならないかどうかを検証する約20種類のルールがあります。これらのビジネスルールをメソッドごとにコーディングして、テスト容易性とドキュメント化をサポートしたいと思います。これらのルールはリポジトリクラスにあるべきですか?おそらく、リポジトリの上にあるサービス層にありますか?ここで私がSQL、EF、またはnHibernateにLinqのようなORMソリューションを使用していることを念頭に置いて、ベストプラクティスは何ですか?
を、私は答えを感謝し、私はNUnitのか、別のテストフレームワークでこれらのメソッドをテストすることができるようにしたい、とルールを置きますこれをはるかに困難にするでしょう。 – Andy
また、これらのルールが複雑であるため、データベース内のすべてを管理することは非常に困難になります。 – Andy