C#中打开OpenFileDialog会改变默认路径的问题
在某个项目中使用SQLite作为嵌入式数据库,经常出现执行某条SQL语句时会提示指定的table不存在,但该表确实存在,SQL语句也完全正确,将应用程序关闭重试同样的操作也能顺利执行通过。
多方面查证之后发现,这个错误有规律,每当打开OpenFileDialog之后,执行SQL语句都会有这个错。
进一步研究发现,打开OpenFileDialog会将改变程序的默认路径
找到问题根源后,可以针对性的做如下修改:
1、打开OpenFileDialog前保存原默认路径
string strPath = System.IO.Directory.GetCurrentDirectory();
打开OpenFileDialog后恢复原来路径:
System.IO.Directory.SetCurrentDirectory(strPath);