通过C#运行应用程序的无处不在的方式来获取根目录

时间:2009-10-30 20:01:57

标签: c# winforms .net-3.5

我的应用程序要求我可以访问文件系统。无论代码是在Web服务器还是控制台应用程序上运行,我如何获得运行应用程序的根目录。像C:\ TheApplication ...

谢谢!

4 个答案:

答案 0 :(得分:9)

最简单的可能是:

System.Reflection.Assembly.GetExecutingAssembly().Location

希望这有帮助,

-Oisin

答案 1 :(得分:1)

你可以试试这个:

String path = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);

您可以在这里阅读有关这两个课程的更多信息:

答案 2 :(得分:1)

我刚刚测试了一种非常基本的方法,可以在asp.net和windows服务中运行。

var binariesPath = string.IsNullOrEmpty(AppDomain.CurrentDomain.RelativeSearchPath) 
                    ? AppDomain.CurrentDomain.BaseDirectory // Windows Service
                    : AppDomain.CurrentDomain.RelativeSearchPath; // Asp.net

答案 3 :(得分:0)

更容易:

string myPath = Application.ExecutablePath;

string myPath = Application.ExecutablePath;

对于winforms应用程序,始终设置。