首頁 >後端開發 >C++ >如何在 .NET 應用程式中指定 SQL Express MDF 檔案的相對位置?

如何在 .NET 應用程式中指定 SQL Express MDF 檔案的相對位置?

Patricia Arquette
Patricia Arquette原創
2024-12-28 14:34:18579瀏覽

How to Specify SQL Express MDF File Location Relatively in .NET Applications?

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn