複数のデータベースに到達する必要があるアプリケーションがあります。以前は、単一のデータベースにのみ到達する個別の DAL がありました。別のビジネス層が最上位にあり、特定の DAL のみに到達します。ビジネス レイヤーの上にあるアプリケーション (さまざまな Web サイト) は、データを共有する必要がある場合、任意の数のビジネス レイヤーを自由に呼び出すことができました。
これはしばらくの間うまくいきました。ただし、今日では、アプリケーションを構築するためのソリューションが大規模になっています。アプリケーション層はすべて、すべてのビジネス層に接触しているようです。再利用は行われていますが、ビルドは遅々として進まず、単一のソリューションに不要なコードが大量に含まれていることは理不尽に思えます。
他の誰かがこの状況に対処しましたか? 後で LLBLGen や NHibernate などの ORM を使用して、データ共有を DAL に落としましたか? それとも、まったく別の何かを思いつきましたか?