我有以下项目解决方案:
有一个 ASP.NET MVC Web 应用程序,其中我在 App_Data 目录中有一个 SQL 数据库(mdf 文件)。
有一个类库,我从 migratordotnet进行了一些迁移。在我的构建文件中,我必须指定 SQL 数据库的位置,以便它可以运行迁移。
目前在迁移项目中,我使用硬编码路径来访问连接字符串中的 SQL 数据库。它看起来像这样:
connectionString="Data Source=.\SQLExpress; Integrated Security=true; AttachDbFilename=C:\MySolution\MyMVCProject\App_Data\MyDatabase.mdf"
这不是我想做的。我也不能使用相对路径(例如..\MyMVCPProject\AppData\MyDatabase.mdf
因为 migratordotnet 中使用的 SQL 类无法正确翻译它)但我想使用某种替代路径,就像你|DataDirectory|
在Web.Config
在这样的网络项目中:
connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Integrated Security=True;User Instance=True"
我该如何做到这一点?我无法在迁移项目中使用该连接字符串。因为|DataDirectory|
将转到 .NET Framework 安装路径并在那里查找数据库文件。