1

我创建了一个处理 txt 文件的 dotnet 核心控制台。它需要与 txt 文件位于同一文件夹中才能工作,因为它贯穿所有 txt 文件,因此需要定义其当前目录。当我在 Visual Studio 中运行我的解决方案时,它给出了我的应用程序所在的正确目录,但是当我将它发布为独立控制台并从桌面运行它时,它给出了一个错误的目录 (C:\users... \cue2n1g0.eiw)。我正在使用以下行来定义控制台的当前目录。

 string currentFolder = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
4

1 回答 1

0

在我的测试中,所有这些结果都相同,并返回了桌面的真实路径,对于我使用 VS 的“发布到文件夹”选项在此处发布的 .net 5 控制台应用程序:

Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)
AppContext.BaseDirectory
Environment.CurrentDirectory
于 2021-10-13T08:41:23.577 回答