缺少使用单独DLL的类库中的DLL

时间:2014-11-19 13:41:25

标签: c# .net dll

在C#.NET 4.0中,我正在创建一个我计划在许多其他项目中重用的类库/ DLL。该类库本身将使用多个DLL。例如,我正在创建的类库可能引用了几个DLL,如:

ServerConnectorLibrary references:
Lib1.dll
Lib2.dll
Lib3.dll

当我构建它时,我得到ServerConnectorLibrary.dll作为bin \ Debug文件夹中的输出。

我现在想要的是在其他项目中使用此ServerConnectorLibrary.dll。但是,当我将DLL添加到我的新项目并运行时,我收到以下错误:

FileNotFoundException: Could not load file or assembly "Lib1.dll".

如果我将Lib1.dll添加到我的新项目的bin\Debug文件夹中,问题就无法解决。

1 个答案:

答案 0 :(得分:0)

您可以将所有依赖项合并到一个程序集中。这是CodeProject上的一个老例子。

http://www.codeproject.com/Articles/9364/Merging-NET-assemblies-using-ILMerge

这里还有一个StackOverflow线程......

How do I merge multiple .net assemblies into a single assembly?

否则,请确保将每个依赖项的属性设置为copy local,然后将依赖项与库一起包含在内。这些是DLL,因此它们在运行时动态链接,不像可能静态链接的旧C ++和C库。