C# 如何/在何处运送带有.NET DLL的第三方库?

C# 如何/在何处运送带有.NET DLL的第三方库?,c#,.net,dll,packaging,C#,.net,Dll,Packaging,我正在构建一个.NET DLL类库,它依赖于其他库,如log4net.DLL-打包DLL时,我应该将这些DLL放在哪里?有没有办法将它们自动包含在一个超级DLL中?我应该将所有dll放在一个bin文件夹中吗?在您的解决方案树中,有一个名为“src”的文件夹,用于所有YRU源代码,还有一个名为“lib”的文件夹,用于log4net、自制dll库和任何其他库。您需要首先检查附加到其他dll的EULA和其他许可证。有些可能会限制其DLL库的重新分布方式。假设没有问题,您可以将它们编译为一个大DLL,或

我正在构建一个.NET DLL类库,它依赖于其他库,如log4net.DLL-打包DLL时,我应该将这些DLL放在哪里?有没有办法将它们自动包含在一个超级DLL中?我应该将所有dll放在一个bin文件夹中吗?

在您的解决方案树中,有一个名为“src”的文件夹,用于所有YRU源代码,还有一个名为“lib”的文件夹,用于log4net、自制dll库和任何其他库。

您需要首先检查附加到其他dll的EULA和其他许可证。有些可能会限制其DLL库的重新分布方式。假设没有问题,您可以将它们编译为一个大DLL,或者创建一个安装程序(或一个简单的zip文件),将所有相关的DLL安装到它们的预期目的地。

只需将它们与DLL一起发送到一个目录中即可(假设您谈论的是二进制发行版——在源发行版中,我有一个包含依赖项的“lib”目录)

别忘了检查你是否还需要提供许可证、获取来源的指示等

我个人不会尝试将您的类库与依赖项合并。

您应该看看。我链接了一个显示ILMerge用法的博客


不确定如何部署解决方案,但不要忘记,为了签署类库,您需要签署第三方DLL。仅此一项就可能需要您合并所有引用。

我实际上做了您在上一次声明中说过不要做的事。使我的项目看起来非常混乱h那个额外的源。所以,我只是取消了它们的合并。:)