我有一個訪問數據庫實例的WPF應用程序。我在我的個人計算機上開發,應用程序將在另一臺機器和數據庫實例上運行。有沒有一種方法或最佳做法來存儲WPF應用程序之外的實例名稱,我可以在應用程序啓動時讀取它?目前我有評論,並且在我從一臺機器移動到另一臺機器時取消註釋數據庫實例名稱。我希望在本地機器上存儲一些我可以在應用程序啓動時讀取的內容。WPF,什麼是存儲啓動時要使用的常量的最佳方式?
這是我目前做的:
try
{
if (sqlConn != null)
{
sqlConn.Close();
}
strConnection = "Data Source=" + strDBInstance + "; Initial Catalog=NBFoodPantry;Integrated Security=true; MultipleActiveResultSets = True";
//strConnection = "Data Source=CASS-LAPTOP\\SQLEXPRESS; Initial Catalog=NBFoodPantry;Integrated Security=true; MultipleActiveResultSets = True";
//strConnection = "Data Source=KENTS-WORK-PC\\CASS_SQLEXPRESS; Initial Catalog=NBFoodPantry;Integrated Security=true; MultipleActiveResultSets = True";
sqlConn = new SqlConnection(@strConnection);
try
{
sqlConn.Open();
}
catch (Exception ex)
{
string strMsg;
WriteErrorLog(strErrorLogFile, "ConnectToDatabase", ex.Message, false);
strMsg = "ConnectToDatabase: SQL Open failed. Please make sure that you database ";
strMsg += "instance and name are correct. Also make sure that the SQL engine is running.";
System.Windows.MessageBox.Show(strMsg);
}
}
catch (Exception ex)
{
string strMsg;
WriteErrorLog(strErrorLogFile, "ConnectToDatabase", ex.Message, false);
strMsg = " ConnectToDatabase: failed with error, " + ex.Message + ".";
System.Windows.MessageBox.Show(strMsg);
}
您可以在應用程序中創建靜態只讀字段。但隨後會出現問題,您將如何從一臺機器傳輸到另一臺機器。 **編輯:**如果您只需要使用該常量來加載數據庫的連接名稱,則可以將其存儲在web.config中,或者從任何API中加載它。但這不是最好的方法。 –
您應該發佈您的努力的snipp代碼 –
請參閱MSDN上的[使用應用程序設置和用戶設置](https://msdn.microsoft.com/en-us/library/bb397750(v = vs.110).aspx) 。您的數據庫連接字符串應該是應用程序設置(在App.config中,而不是Web.config中)。 – Clemens