焦点を絞り込むために、ここで質問を単純化しました。
リポジトリからのデータが必要な場合に、エンティティ構築のためにドメイン層で検証を実行するための推奨されるアプローチは何ですか?
たとえば、エンティティが作成される前に合格する必要がある次の検証規則を考えてみましょう。
ルール 1: 携帯電話を要求する従業員は、ABC 社で 6 か月以上勤務している必要があります。
UI から発生し、後でアプリケーション層の注文サービスから渡されたドメイン層のエンティティが利用できる情報には、上記のサンプル ルールを適用するのに十分な情報がありません。従業員が 6 か月以上働いているかどうかを計算するために、従業員の雇用日を返すには、リポジトリからクエリが必要です。
質問
問題は、ルール 1 を検証するために必要な従業員の雇用日を取得するために、この時点でどのレイヤーまたはサービスがリポジトリに接続する必要があるかということです。ルール 1 がパスし、エンティティの他のデータ値もパスしない限り、ドメイン エンティティは有効とは見なされません。
前もって感謝します。