我有3个应用程序(asp.net网站,控制台应用程序,SSIS)和所有这3个应用程序使用的公共类库。该公共库获取位于当前运行目录中的外部配置文件。例如
ASP.NET - > c:\MySite\appconfig.xml
CONSOLE -> C:\MyConsoleApplication\appconfig.xml
SSIS -> c:\MySSISPakage\appconfig.xml
我使用以下代码获取当前正在运行的应用程序路径以获取appconfig.xml文件
string appPath = AppDomain.CurrentDomain.BaseDirectory;
在Web应用程序中,它正在运行文件并返回路径
c:\MySite.
但是在控制台应用程序中它返回路径
C:\MyConsoleApplication\bin\debug
。我需要获取路径
C:\MyConsoleApplication
用于控制台应用程序。有什么想法吗?
答案 0 :(得分:0)
您可以使用Directory.GetParent
尝试这样:
Program
是项目中任何类的名称
string path = Path.GetDirectoryName(Assembly.GetAssembly(typeof(Program)).Location);
Console.WriteLine(Directory.GetParent(Directory.GetParent(path).ToString()).ToString());