首先,通過遠程我的意思是我們網絡上的中央專用SQL Server。通過本地我的意思是本地SQL Express安裝。使用Linq將本地和遠程之間的`ConnectionStrings`切換爲SQL
我的情況僅限於內部。沒有云服務,外部網站等。我的應用程序允許用戶斷開連接,但爲了最大限度地減少流量和其他一些問題,我希望允許它們直接連接到中央服務器,只要它是可用的, /或者當他們選擇中央服務器時設置設置。
設置非常簡單。每個人的本地連接字符串是像這樣 - >
Data Source=.\SQLEXPRESS;Initial Catalog=MemberCenteredPlan;Integrated Security=True
和中央SQL連接字符串,像這樣 - >
Data Source=CentralSQL;Initial Catalog=MemberCenteredPlan;Integrated Security=True
而且,我的數據是在一個單獨的項目從我的用戶界面,因此我有困難搞清楚如何從UI層的數據層訪問設置文件。
我應該爲所有方法添加一個參數並將IsOnline變量傳遞給它們嗎?似乎重複,但如果我知道更好的方式,我不會在第一個地方張貼。
感謝您的幫助!
This is a very similar post但我想知道當我想在運行期間在本地數據庫和遠程數據庫之間切換時,建議是否有所不同。我用
聽起來不錯,我想我失去了一些東西。 'IsConnected' ...我會在UI中設置它,可能你會怎麼做呢?我曾想過將它綁定到應用程序設置,但我似乎無法從數據層訪問它。我會回到傳遞給每個電話嗎? – 2010-03-04 13:33:09
@Refracted Paladin - 無論你想要什麼,你都可以訪問它,不管它是自動確定還是喜歡James的答案。你根本不需要傳遞它,只需要靜態地獲取它。如果您需要AppSettings方法,ConfigurationManager.AppSettings是最簡單的賭注。 – 2010-03-04 14:51:37
當我第一次讀這篇文章時,我假設你的意思是爲我創建一個針對每個數據上下文(ConnectDataContext,CMODataContext,MCPDataContext)的分類,正確嗎?否則,你的意思是讓我爲'System.Data.Linq.DataContext'創建一個部分類? – 2010-04-13 15:35:21