在 C# 單元測試中管理 SQL Express MDF 檔案路徑
C# 單元測試通常依賴 SQL Express 資料庫,通常透過連接字串中的絕對路徑來引用 MDF 檔案。 這種方法不靈活。 更強大的解決方案涉及使用相對路徑或環境變數來動態定位資料庫檔案。
雖然 |DataDirectory|
常用於 Web 應用程序,但它並不直接適用於控制台或其他非 Web 應用程式。 解決方案是手動設定 DataDirectory
屬性並相應地建構連接字串。
這是一個實際範例:
<code class="language-xml"><configuration> <connectionStrings> <add connectionString="Server=.\SQLExpress;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Database=MyDatabaseForTesting;Trusted_Connection=Yes;" name="MyConnectionString" /> </connectionStrings> </configuration></code>
在單元測試類別中,在測試執行之前設定 DataDirectory
屬性:
<code class="language-csharp">[TestInitialize] public void TestInitialize() { string databaseDirectory = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Databases"); AppDomain.CurrentDomain.SetData("DataDirectory", databaseDirectory); // ... remaining test initialization ... }</code>
此方法允許在連接字串中使用相對路徑,從而可以透過應用程式設定檔更好地控制資料庫檔案位置,從而提高程式碼的可維護性和可移植性。
以上是如何在 C# 單元測試中使用 SQL Express MDF 檔案的相對路徑?的詳細內容。更多資訊請關注PHP中文網其他相關文章!