首页 >后端开发 >C++ >如何在 app.config 连接字符串中使用 My SQL Express MDF 文件的相对路径?

如何在 app.config 连接字符串中使用 My SQL Express MDF 文件的相对路径?

Linda Hamilton
Linda Hamilton原创
2024-12-28 22:02:10387浏览

How Can I Use a Relative Path for My SQL Express MDF File in the app.config Connection String?

SQL Express 连接字符串:使用相对 MDF 文件路径

问题:

开发人员正在努力指定SQL Express MDF 文件相对于 app.config 文件中应用程序目录的位置。他们希望避免手动定义绝对路径,这在应用程序部署到不同位置时变得很麻烦。

解决方案:

1.使用 |DataDirectory|:

|DataDirectory|不仅仅适用于网络应用程序。它可用于 Web 和桌面应用程序。它代表应用程序期望查找数据文件的目录。

2.设置|数据目录|以编程方式:

如果 |DataDirectory|应用程序不会自动设置,您可以使用 AppDomain.CurrentDomain.SetData("DataDirectory", path) 以编程方式设置它

示例配置:

在应用程序中.config文件:

<add name="MyConnectionString"
    connectionString="Server=.\SQLExpress;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Database=MyDatabaseForTesting;Trusted_Connection=Yes;" />

单元测试初始化​​中方法:

[TestInitialize]
public void TestInitialize()
{
    AppDomain.CurrentDomain.SetData("DataDirectory", System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Databases"));
}

通过使用此方法,连接字符串现在将自动使用相对于应用程序目录的 MDF 文件路径,即使在单元测试环境中也是如此。

以上是如何在 app.config 连接字符串中使用 My SQL Express MDF 文件的相对路径?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn