我有一个名为JIMS.Printing.dll的dll,它位于主应用程序JIMS.exe的Reporting文件夹中。
但是在运行JIMS.exe的Reporting内的JIMS.Printing.dll代码内的Templates文件夹内调用某些文件时出现错误
JIMS.exe
--------->Reporting
------------------->JIMS.Printing.dll
------------------->Templates
-----------------------------> Files
码:
string _templatePath = Path.Combine(Path.GetDirectoryName(System.Reflection.Assembly.GetAssembly(typeof(JIMS.Printing.PrintInvoice)).Location), "Templates");
来自JIMS.Printing.dll的代码
JIMS.exe在JIMS.exe Path \ Templates \ file中寻找文件,
但是实际上该文件位于JIMS.Printing.dll Path \ Templates \ files中
最佳答案
您可以使用:
Assembly.GetExecutingAssembly().Location
这将为您提供执行程序集的路径,然后使用:
System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)
这将给出包含的文件夹。
关于c# - 在.Net中获取实际的dll路径,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13200880/