私は、一連のルールに基づいて更新する必要があるフィールドを持つ単純なEntity Frameworkバックアップドメインオブジェクトを持つシステムを設計しています。これらのルールを徐々に(アジャイルスタイルで)実装したいのですが、EFを使用しているので、各ルールをドメインオブジェクトに入れることについては不思議です。しかし、私は "手続き型コード"とanemicドメインモデルを使
例として、オブジェクトは次のとおりです。
class Employee {
private string Name;
private float Salary;
private float PensionPot;
private bool _pension;
private bool _eligibleForPension;
}
私は "Salaryが100,000以上で_eligibleForcentoryがfalseの場合、set_eligibleForCentoryをtrueとして設定する"というルールを構築する必要があります。
約20のルールがあり、EmployeeRulesクラスで実装する必要があるかどうか、またはEmployeRulesクラスのようなアドバイスを探していますか?私の最初の考えは、 "Rule"から継承する各ルールごとに別々のクラスを作成し、Employeeクラスに各ルールを適用することでした。おそらくVisitorパターンを使用していますが、すべてのフィールドをルールに公開して間違っていると感じます。 Employe
2番目の懸念事項は、実際の従業員がDBにバックアップされたEntity Frameworkエンティティであるため、これらの「エンティティ」にロジックを追加することができないということです。特に、各ルールを単体テストするためにオブジェクトをモックする必要があるときです。同じオブジェクトでテストしているルールがある場合、どうすれ
私はルールを適用する前に簡単なドメインオブジェクトに変換するためにAutoMapperを使用することを考えていましたが、自分でフィールドへの更新を管理する必要があります。これに関するアドバイス?