OpenFileDialog dialog= new OpenFileDialog();

OpenFileDialog 打开之后环境路径被改变,有时引起意外的问题,例如本想对程序所在路径中某个文件或数据库操作,经过OpenFileDialog 之后路径改变,目标文件/数据库就找不到了

可以调用下

Environment.CurrentDirectory = AppDomain.CurrentDomain.BaseDirectory.ToString();

还原路径

 

 

btw, ref someone else’s blog

c#获取当前应用程序所在路径

环境路径被改变 OpenFileDialog 对于Windows程序 和Web 应用程序来说,他们运行的路径是不一样的,所以关键是判断当前运行的程序是哪种程序.于是我们可以使用如下的代码

环境路径被改变 OpenFileDialog string path = "";
环境路径被改变 OpenFileDialog if (System.Environment.CurrentDirectory == AppDomain.CurrentDomain.BaseDirectory)//Windows应用程序则相等
环境路径被改变 OpenFileDialog {
环境路径被改变 OpenFileDialog               path = AppDomain.CurrentDomain.BaseDirectory;
环境路径被改变 OpenFileDialog           }
环境路径被改变 OpenFileDialog else
环境路径被改变 OpenFileDialog {
环境路径被改变 OpenFileDialog               path = AppDomain.CurrentDomain.BaseDirectory + "Bin\";
环境路径被改变 OpenFileDialog           }

这样如果我们写了一个类库,类库中用到了Assembly.LoadFrom,由于是通用类库,所以可能用到Windows程序中也可能用到Web中,那么用上面的代码就很方便了.

相关文章:

  • 2021-08-28
  • 2022-12-23
  • 2022-12-23
  • 2021-07-22
  • 2022-12-23
  • 2021-12-15
  • 2021-08-26
猜你喜欢
  • 2021-09-07
  • 2022-01-02
  • 2022-12-23
  • 2021-11-04
  • 2022-12-23
  • 2022-12-23
  • 2022-01-21
相关资源
相似解决方案