SQL Express 連接字串:指定相對於應用程式的MDF 檔案位置
在C# 單元測試中使用SQL Express 資料庫時,可以是不方便在連接字串中指定MDF 檔案的絕對檔案路徑。相反,您可能更喜歡使用相對路徑或變數。
.NET Core Web 應用程式:
在使用 .NET Core 的 Web 應用程式中,您可以利用 DataDirectory變數來動態參考應用程式的資料目錄。預設情況下,此目錄通常位於 wwwrootApp_Data。您可以在appsettings.json 中設定連接字串,如下所示:
{ "ConnectionStrings": { "MyConnectionString": "Server=.\SQLExpress;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Database=MyDatabaseForTesting;Trusted_Connection=Yes" } }
.NET Core 桌面應用程式:
對於.NET Core 中的桌面應用程序,DataDirectory不支援變數。相反,您可以在單元測試裝置或設定方法中設定DataDirectory 屬性:
[TestInitialize] public void TestInitialize() { AppDomain.CurrentDomain.SetData("DataDirectory", System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Databases")); // Rest of initialization logic }
使用此設置,您可以使用DataDirectory 變數在appsettings.json 中指定連接字串:
{ "ConnectionStrings": { "MyConnectionString": "Server=.\SQLExpress;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Database=MyDatabaseForTesting;Trusted_Connection=Yes" } }
在這兩種情況下,請確保資料庫目錄包含在專案中,並且它包含必要的MDF 檔案。
以上是如何在 .NET 應用程式中指定 SQL Express MDF 檔案的相對位置?的詳細內容。更多資訊請關注PHP中文網其他相關文章!