我有一个 C# 项目,并且通过新数据源
选项添加了一个 Access 文件 (.mdb
)。
因此它的副本始终位于我的项目文件夹中。现在我的连接字符串使用该路径(C:\Users\PC\Visual Studio\Projects....)。如果我要将项目移动到另一个目录或计算机,我必须手动更改路径。但如果我使应用程序可安装,这可能是不可能的。
如何使数据库路径相对于项目?
最佳答案
配置安装程序时,您可以指定 .mdb
文件将转到哪个文件夹。您可以选择将其放在与应用程序的 .exe
文件相同的文件夹中,或者放在 AppData
下的应用程序文件夹中,或者用户的主文件夹中,或者任何其他位置你喜欢。正如您向安装程序指定它一样,您可以使用 Environment.SpecialFolder
在代码中指定它。枚举。
问题在于,在开发过程中,您的 .mdb
文件通常位于项目文件夹的根目录中,这与上述内容都不相符。
我所做的是,首先,在项目选项中,我确保当我的应用程序在开发过程中启动时,它始终在我的项目的根文件夹中启动,而不是在 ./bin/Debug
文件夹。
然后,每次启动我的应用程序时,我都会检查我的 .mdb
文件是否位于应用程序的当前目录中,如果是,那么这一定是开发运行,所以我使用它。
否则,这必须是部署运行,因此我使用 SpecialFolder
枚举来获取安装程序应放置 .mdb
文件的文件夹。
关于c# - 如何为 C# 添加数据库文件的相对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32978866/