在Windows窗体应用程序中获取当前路径不能正常工作
本文关键字:常工作 工作 不能 当前路径 窗体 Windows 应用程序 获取 | 更新日期: 2023-09-27 18:10:40
我正在研究一个链接到本地db的应用程序,我想动态地获得db dy的路径。我不知道用户会在哪里复制这个应用程序,所以我想自动获得db的路径。我写了下面的代码,它得到了路径,但不完全是。我的意思是,如果我的应用程序在:C:'Users'ROG'Desktop
中,它说C:'Users'ROG
中没有db。所以它不会得到它最后的位置。为什么会这样?如何解决?
我连接到它如下:
var connString = (@"Data Source=" +
Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName +
@"'Angajati.sdf");
考虑使用以下代码来确定应用程序基目录:
AppDomain.CurrentDomain.BaseDirectory
完整代码如下:
var connString = "Data Source=" +
System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Angajati.sdf");
尝试使用以下代码
var connString = (@"Data Source=" +
System.IO.Path.Combine(System.IO.Path.GetDirectoryName(
System.Reflection.Assembly.GetExecutingAssembly().Location),
"Angajati.sdf"));
我建议使用应用程序路径而不是使用获取当前目录。这是因为如果使用OpenFileDialog
,当前目录改变,但applicationPath是相同的。
System.Reflection.Assembly.GetExecutingAssembly().Location