實體框架在運行時多個數據庫(相同的模式)?

asp.net asp.net-mvc entity-framework

首先,讓我說我對EF很新。話雖如此,這是我的困境:

將有一個ASP.NET應用程序遷移到ASP.NET MVC。我想為此使用EF。有一個主數據庫存儲“客戶信息”。除此之外,每個“客戶”都有自己的數據庫。這些是我們的約束。

目前,主數據庫中的客戶端信息使我能夠為每個客戶端構建連接字符串並進行單獨的SQL調用。

我如何在Entity Framework中完成同樣的事情?每個數據庫都具有相同的架構。有沒有辦法以編程方式切換連接字符串?這些數據庫當前位於同一台服務器上,但這不是必需的,它可能是完全不同的服務器。

有任何想法嗎?

Web.config中的多個連接字符串將是最後的手段。即便如此,我也不確定如何準確地將其連接起來。

先感謝您。

熱門答案

如果在實體對象的構造函數中使用EntityConnection,則可以非常輕鬆地更改數據庫。

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


許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因