リポジトリへの代替データアクセスパターン
-
03-07-2019 - |
質問
ドメインには集約ルート/エンティティではない特定のオブジェクトがありますが、それでもデータベースからそれらを取得する必要があります。これらのリポジトリを作成することで、物事を混乱させたくありません。では、代替のデータアクセスパターンとは何ですか?もちろん、インターフェイスを分離しながら、単にそれらのDAOを作成しますか?
編集:
私がやっていることの詳細。コードを作成する必要があります。このコードには、形式に関する特定の規則があります。ルールの1つは、最終文字は、最後に生成されたコードから1ずつ増加する一意の数字でなければならないということです。例:
ABCD1 ABCD2 ABCD3
したがって、問題の数値を格納するために、1行1列のテーブルを保持しています。さて、私はこの番号をエンティティと見なしてリポジトリを作成したくありません-それはやり過ぎです。番号を取得し、それに1を追加して保存する方法が必要です。私はそれを行うことができる無数の方法があることを知っていますが、慣習的な方法があるかどうか疑問に思っています。
解決 3
オプションを調査した後、テーブルゲートウェイパターンを使用します。
他のヒント
理論上、適用できるデータアクセスパターンがいくつかあります。ただし、特定のパターンを提案する場合は、詳細を提供する必要があります。
詳細なしに、私が提案できるのは、マーティンファウラーのエンタープライズアプリケーションアーキテクチャのパターンの本を検討することです。
編集:慣習的な方法?いいえ、私が考えることはできません-それは本当にあなたのドメインでこのユニークなコードをどこでどのように使用しているかに依存します。これを行っていた場合、おそらくデータベースと直接やり取りしてこの機能を実行する小さなサービスを作成することになります-リポジトリほど重くはなく、目前の問題に非常に焦点を当てています。
編集に基づく:まず、そのコードを作成する必要があるコンテキストを見ていきます。おそらく、いくつかの関連エンティティまたは欠落している何かがあります。
ところで、特定の機能をコーディングしているときに時々質問が出てくるので、この質問は本当に面白いと思います。通常、私はシナリオで何かが欠けていることに気付き、通常のリポジトリパターンにうまく適合します。