與2個開發人員一起處理Windows窗體應用程序項目。通過tfs共享源代碼,已將數據目錄路徑替換爲|DataDirectory|
關鍵字,因爲每臺PC中的數據目錄不同。 (C:\Users\username\Documents\Visual Studio 20XX\Projects\solution folder\solution folder
)C#Visual Studio:| DataDirectory |連接字符串衝突中的關鍵字衝突mdf文件
曾使用連接字符串作爲
class ConnectionManager
{
public static SqlConnection dbcon()
{
string connectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\systemdb.mdf;Integrated Security=True";
SqlConnection con = new SqlConnection(connectionString);
con.Open();
return con;
}
}
問題是,當C#應用程序將數據發送到SQL Server數據庫的相對路徑,它表明數據已經被添加到數據庫中,但實際上數據庫沒有更新。
發現連接字符串與位於bin\debug
中的.mdf
位於根文件夾中的.mdf
文件衝突。當使用|DataDirectory|
時,SELECT
查詢工作正常。 INSERT查詢在使用|DataDirectory|
時不起作用,但在使用實際目錄路徑而不是|DataDirectory|
時可以正常工作。
如何解決這個問題?要求是:
應該不需要每次修改目錄路徑從TFS獲取最新版本之後,需要像
|DataDirectory|
始終保持。連接字符串不應與根文件夾中的
.mdf
文件和bin\debug
文件夾發生衝突。