我想構建一個連接到多個數據庫的應用程序。使用多個數據庫的單個ASP.NET MVC應用程序
客戶將有地址訪問您的應用程序(例如customer1.myproduct.com),然後此應用程序訪問數據庫「customer1」。每個客戶都有自己的數據庫。
有什麼更好的方法來建立這些連接?爲了獲得良好的應用程序性能,我應該注意什麼?
我想構建一個連接到多個數據庫的應用程序。使用多個數據庫的單個ASP.NET MVC應用程序
客戶將有地址訪問您的應用程序(例如customer1.myproduct.com),然後此應用程序訪問數據庫「customer1」。每個客戶都有自己的數據庫。
有什麼更好的方法來建立這些連接?爲了獲得良好的應用程序性能,我應該注意什麼?
對每個客戶都有一個數據庫是一個壞主意。您將如何手動爲每個客戶處理創建新數據庫?
保持所有這些連接將不是一件容易的工作。
沒有什麼可以阻止你讓ASP.NET應用程序訪問多個數據庫,在解決方案的web.config中可以添加多個連接字符串。在標籤中。
<connectionStrings>
<add name="DefaultConnection" .....>
<add name="EmployeeConnection" .....>
</connectionString>
如果我是你,我會使用「ADO.NET實體模型」與「LINQ的」訪問數據,良好的應用性能,這一切都取決於你在做什麼,有多少,並多長時間。最好檢查一下當你卡住或閱讀一些最佳做法http://msdn.microsoft.com
希望這會有所幫助。
您可以更改項目中的配置文件或創建新項目。我認爲你可以在配置文件中只改變connectionString,它就足夠了。當您要更改數據庫時,只需更改:
<connectionStrings>
...
connectionString="new connectionstring"
...
</connectionStrings>
應該爲chage創建小型應用程序。
你是說每個客戶都有自己的數據庫嗎? – Brian 2012-03-22 13:35:36
您使用什麼技術與您的數據庫進行通信?看起來你可能有某種數據庫上下文提供者從URL服務器變量中讀取子域名,並將其與相同名稱的連接字符串進行匹配。使用該連接字符串進行數據庫工作。 – HackedByChinese 2012-03-22 13:38:13
不是這方面的專家,但如果您要爲每個客戶自己部署應用程序,則可以轉到Web配置路線。但是,如果它的動態(用戶通過一個通用門戶進行簽名),你需要某種形式的主數據庫 – 2012-03-22 14:30:55