現在のサービス層のデータ アクセス層にリポジトリ パターンを実装しました。
同じクラスの「歴史的メモ」が複数のオブジェクトにマッピングされているオブジェクト モデルがあります (現在は 6 つですが、すぐにそれ以上になる予定です)。
linq to sql を使用するためのベスト プラクティスの一部は、db 内のテーブルごとに 1 つの dbml ファイルを作成するのではなく、それを分解することです。この方法では、コンテキストが作成されたときにパフォーマンスに大きな影響が及ぶことはありません。
残念ながら、オブジェクトを分離する論理的な場所により、5 つの異なる DBML ファイルに歴史的なメモが残されています。linq ジェネレーターがクラスを作成すると、別の名前空間に別のクラスが生成されます。
ドメイン モデルに履歴メモ オブジェクトがありますが、履歴メモを使用するたびにドメイン オブジェクト モデルをデータ モデルに再マップする必要はありません。
やりたくないことの 1 つは、データの「読み取り」を複数のクエリに分割することです。
履歴メモを複数のデータ モデルにマッピングし、マッピングを 1 回だけ書き込む方法はありますか?
ありがとう
ピート
解決
助けてくれてありがとう。すべてのデータ テーブルに対して 1 つのデータ コンテキストに戻ろうと思います。
複数のモデルのセットアップに伴う回避策は、コードの余分な複雑さと潜在的な脆弱性に見合うものではありません。歴史的なメモをマッピングするために左手と右手のコードを同じように書かなければならないのは、あまりにも多くの作業とコードの同期を保つための場所が多すぎます。
入力してくれてありがとう