2014-03-27 63 views
0

我正在製作一系列Windows窗體應用程序。我正在使用應用程序設置工具構建選項菜單的功能,以保持持久的數據和設置。另外,所有應用程序都將允許用戶連接到數據庫並查詢數據。我試圖找到一種方法將數據庫部分放在選項中,以允許用戶測試和設置數據庫選項。設置時,我希望在運行時或下次打開另一個應用程序時顯示或與其他應用程序同步設置。在兩個單獨的窗體窗體應用程序之間共享連接字符串?

到目前爲止,我一直在考慮使用Windows註冊表,或使用應用程序設置製作項目並將其添加到所有應用程序。我還讀了關於使用機器配置文件。我不太確定什麼是最好的,或者當應用程序部署時這將如何工作。

設置和/或值的共享不僅限於連接字符串,還包括與所有應用程序保持併發可能有用的任何數據。

回答

1

您可以使用ConfigurationManager從任何地方打開配置文件。有了這個,您可以在所有應用程序都知道的目錄中定義一箇中央配置。見MSDN

+0

我也想提出這種方法。我想補充一點,你應該考慮IsolatedStorage作爲你的「全局」配置文件的位置。參考:http://msdn.microsoft.com/en-us/library/vstudio/3ak841sy(v=vs.100).aspx#isolated_storage_locations –

0

在這種情況下,我使用SqlServer express,最好的免費DataBase。 在App.config添加以下代碼

<connectionStrings> 
     <add name="MyConnection" connectionString="User ID=sa;Password=XXXXX;Initial Catalog=DATA_BASE_NAME;Data Source=XXXX\SQLEXPRESS"/> 
</connectionStrings> 

在應用程序的靜態類添加此方法

public static SqlConnection getConnection() 
     { 
      string conn = string.Empty; 
      conn = System.Configuration.ConfigurationManager.ConnectionStrings["MyConnection"].ConnectionString; 
      SqlConnection aConnection = new SqlConnection(conn); 
      return aConnection; 
     } 

當你需要數據庫連接的以這種方式

SqlConnection aConnection = getConnection(); 
調用方法
+0

好的。假設我在運行時更改此連接字符串。另外,其他應用程序將使用此連接字符串連接到同一個數據庫。現在,我如何設法讓其他應用程序看到或獲取這個新更改的連接字符串? –

+0

在運行時,您可以使用此策略更改connectionstring:'SqlConnection aConnection = new SqlConnection(「name = MyDataBase connectionString = User ID = sa; Password = XXXXX; Initial Catalog = DATA_BASE_NAME; Data Source = XXXXX \\ SQLEXPRESS」); – daniele3004

+0

我也瞭解。我知道我可以在運行時構建並分配連接字符串。我的困境是,當我需要保存並允許連接字符串被另一個應用程序用來連接數據庫時看到。 –

相關問題