過去数か月間、DDD と CQRS を使用してアプリケーションを実装してきました。私がまだ苦労していることの 1 つは、特に異なるタイプの複数のデータソースに対して、データを永続化する最善の方法です。
ここまでは、DAL の複数の部分実装を含む DAL インターフェイス レイヤーを使用してきました。次に、ドメイン レイヤーで、リポジトリを使用してドメイン オブジェクトを構築し、n 個の DAL に保存します。ページネーションや検索などのより高度な操作に到達するまで、これは問題なく機能します。これにより、データをマッピングするだけでなく、順序付け/検索/ページ付け基準をマッピングする必要がありました。
永続化レイヤー (IE エンティティ フレームワーク、ファイルシステム、Web サービス) が何であれ、DDD レイヤーに公開し、リポジトリに直接アクセスさせて、次のようなものに組み込まれている機能を利用できるようにする必要があるという意見を読みました。 ORM。これは私には漏れやすい抽象化のように感じます。
これらの問題を解決するのに役立つ、見落としているパターンはありますか?