0

私は、私の前に何人かの開発者によってすでに開始されたプロジェクトに取り組んでいます。特に気になるのは、単一のエンティティが 2 つのデータベースに分割されていることです。

エンティティはトラッカーと呼ばれます。

最初のデータベースは ConfigBase と呼ばれ、その属性とともに TrackerId を持つ Trackers という名前のテーブルがあります。

2 番目のデータベースは StoreBase と呼ばれ、Trackers という名前のテーブルもあり、その要素は最初のベースと同じ TrackerId と一致します。

さらに複雑なことに、ConfigBase で特定のトラッカーにアクセスすると、StoreBase でアクセスできるようにする SQL サーバー名と資格情報が取得されます。

普通の古い ADO.NET を使用すれば、これはそれほど複雑ではありません。しかし、私の仕事はソリューション全体を最新の EF 4.3.1 に引き上げることであるため、エンティティの一貫性を維持するのに苦労しています。Tracker エンティティに関連するものの半分は ConfigBase にあり、残りの半分は StoreBase にあります。通常、結果を得るには両方を取得する必要があります。

データベースレベルでの仮想マージを含まないこれに対する解決策はありますか? Code First モデリングで実行できるソリューションを探しています。

前もって感謝します!

4

1 に答える 1

1

いいえ、EF 自体はコンテキストごとに複数のデータベースを使用することさえできないため、すぐに使用できるソリューションはありません。したがって、データベースをマージするか、各データベースに個別に (データベースごとに個別のトラッカー エンティティを使用して) アクセスし、アプリケーションで何らかの方法でデータをマージします。

于 2012-04-25T20:30:05.407 に答える