Directory.GetCurrentDirectory()方法在不同类型的C#项目中给出了不同的路径

时间:2017-09-20 11:49:44

标签: c#

在Console App(.Net core)中使用时,路径将放弃当前项目文件夹。

例如:

C:\Users\ABC-PC\source\repos\Project1\

使用Console App(.Net Framework)路径时,会放弃当前项目调试文件夹。

例如:

C:\Users\ABC-PC\source\repos\Project1\bin\Debug\

我的问题是如何才能获得

的路径
C:\Users\ABC-PC\source\repos\Project1\

在控制台应用程序(.Net Framework)中?是否有任何预定义的方法?

提前致谢!

1 个答案:

答案 0 :(得分:0)

无法发表评论 - 我强烈建议您遵循René Vogt建议。

但是

如果你不是一个真正的(w)hacky解决方案,你可以简单地使用从Directory.GetCurrentDirectory()获得的路径作为DirectoryInfo - 实例的输入,并检查你是否在{{ 1}}目录。

此对象还为您提供了查询目录内容(以FileInfo对象的形式)以检查您要查找的文件的方法:

  1. 查看文件是否在此目录中,如果不是
  2. 查看父级是否为空,也不是文件根
  3. 用父母冲洗并重复,直到找到或父母为空
  4. 跳过搜索