1

これは、質問を示すための非常に単純化された例です。ここでは 2 つのドメイン オブジェクトしか示していませんが、さまざまなパラメーターを持つさらに多くのドメイン オブジェクトがあると想像してください。

次のドメイン オブジェクトがあるとします。

public class Object1
{
    public string Identifier { get; set; }
    public string Name { get; set; }
}

public class Object2
{
    public string Identifier { get; set; }
    public int ItemValue { get; set; }
}

リポジトリ パターンの典型的な実装には、Object1Repository と Object2Repository があり、それぞれが AddObject、DeleteObject、GetObjectByIdentifier などのメソッドを含む可能性のある IRepository インターフェイスを実装します。リポジトリは、提案された処理を実行するためにデータベースとやり取りする方法を認識します。メソッド。

それはまったく問題ありません。私は、まさにこの方法でリポジトリ パターンを何度も使用してきました。現在、複数の異なるストレージメカニズムがあるという問題があります。Oracle、SQLServer、テキスト ファイル、および XML ファイル。このアイデアをサポートするための最良の設計アプローチは何ですか? リポジトリのリポジトリ? 基本的に私が達成しようとしているのは、複数の異なるオブジェクトを複数の異なる記憶媒体に保存できるようにすることであり、このアイデアにリポジトリパターンを適用しようとしています。

私は C# コードを書いていますが、他のほとんどの言語も読むことができるので、推奨されるアプローチは必ずしも C# である必要はありません。

4

1 に答える 1