実行時に複数のデータベース(同じスキーマ)へのEntity Framework?

asp.net asp.net-mvc entity-framework

質問

まず第一に、私がEFに非常に慣れていないと述べさせてください。とはいえ、これが私のジレンマです。

ASP.NET MVCに移行されたASP.NETアプリケーションがあります。これにはEFを使いたいのですが。 「クライアント情報」を格納するメインデータベースが1つあります。それとは別に、すべての「クライアント」には独自のデータベースがあります。これらは私たちが持っている制約です。

現在、メインDB内のクライアント情報により、クライアントごとに接続文字列を作成して個々のSQL呼び出しを行うことができます。

Entity Frameworkで同じことをどのように達成できますか?各データベースは同じスキーマを持ちます。プログラムで接続文字列を切り替える方法はありますか?これらのDBは現在同じサーバー上にありますが、これは要件ではなく、まったく異なるサーバーである可能性もあります。

何か案は?

Web.config内の複数の接続文字列は最後の手段です。それでも、どのように正確にこれを接続するのかわかりません。

前もって感謝します。

人気のある回答

エンティティオブジェクトのコンストラクタでEntityConnectionを操作すると、データベースを簡単に変更できます。

EntityConnection con = new EntityConnection(connString);
con.ChangeDatabase(dbName);
using (Entities context = new Entities(con))
{
    // Some code here
}


Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ