クラスOrder
(ユーザーに関連)があり、プロパティーにはstate
があるとします。私は同じ時間に複数の確認された注文があるのを防ぐため、注文を確認する前に、確認済みのものがあるかどうかを確認する必要があります。リポジトリにドメインオブジェクトまたはリポジトリを注入すると、ビジネスロジックを意識する必要がありますか?
私は2つのアプローチ(私の知っている)を作ることができます。
OrderRepository
を競合の検索機能changeState
はそれを変更する前に注文を確認し、何も見つからなかった場合にのみ、それを可能にしている - ここでの問題は、リポジトリです状態の変化の論理を知っている。OrderRespository
はOrder
に注入され、Order
は競合をチェックするために、そのリポジトリを使用する機能changeState
を持っている - ここでの問題は、ドメインオブジェクトを永続化について知っています。
正しい方法はありますか?
エンティティがリポジトリにアクセスすることは可能ですか?(http://stackoverflow.com/questions/827670/is-it-ok-for-entities-to-access-repositories) – guillaume31
Nope、been 2番目のアプローチが悪いことを知りましたが、私はそれを適切に処理する方法をまだ分かりません。 – kuba
あなたのQのタイトルはあなたが本当に探しているものを反映していません - あなたはそれを変更する必要があります。 – guillaume31