Avatar ·

如何在C#中获取应用程序文件夹路径?最佳方法

大家好!我是一名C#初学者开发者,遇到了一个问题。我需要将一些配置文件和临时数据保存在我的应用程序旁边。在WinForms中,我尝试使用`Application.StartupPath`,但当我转到控制台应用程序时,这个属性不可用。然后我尝试了`Directory.GetCurrentDirectory()`,但它返回的不是.exe所在的文件夹,而是我启动程序的文件夹(例如,从Visual Studio启动时,它是bin/Debug文件夹)。 以下是我的代码示例,它没有按预期工作: ```csharp string configPath = Path.Combine(Directory.GetCurrentDirectory(), "config.xml"); // 文件不是在exe旁边创建,而是在启动文件夹中创建 ``` 我听说过`Assembly.GetExecutingAssembly().Location`和`AppDomain.CurrentDomain.BaseDirectory`,但我不明白它们的区别,以及在现代.NET中哪种方法被认为是正确的。请告诉我如何可靠地获取我的应用程序可执行文件所在的文件夹路径?