我有一个名为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/

10-10 13:40