gpt4 book ai didi

c# - 类库 - 引用 - 复制本地的可重用性?

转载 作者:行者123 更新时间:2023-11-30 13:04:45 24 4
gpt4 key购买 nike

我有一个类库项目,我们称之为 CoreLib。CoreLib 有两个对第 3 方 DLL 文件 1.dll 和 2.dll 的引用

因为我非常喜欢可重用性,所以我希望能够在尽可能多/需要的地方使用 CoreLib。

因此,如果我有一个名为 BigProjectA 的项目和另一个名为 BigProjectB 的项目,并且它们需要利用 CoreLib 提供的功能,我所要做的就是在这些项目(BigProjectA 和 BigProjectB)中添加对 CoreLib 的引用。

没关系,除非我将我的输出文件夹(bin 目录)复制到其他人的计算机上,我不能保证他们的机器上有 1.dll 和 2.dll。

为此,我只是将 CoreLib 项目中的 1.dll 和 2.dll 引用的 Copy Local 设置为 True。

构建 CoreLib 项目时,我可以看到 1.dll、2.dll 和 CoreLib.dll 文件。太完美了!

但是在引用CoreLib的项目中,只复制了CoreLib.dll,没有复制1.dll和2.dll。

我错过了什么吗? Copy Local 设置为 True,但仅为 CoreLib 项目复制。因此,即使它们在同一个解决方案中,并且我将 CoreLib 添加为对其他项目的项目引用,我仍然看不到 1.dll 和 2.dll 复制到其他 bin/Debug、bin/Release 文件夹其他项目(BigProjectA 和 BigProjectB)。

有没有简单的解决方案?

最佳答案

简单的解决方案是:

  1. 在对 CoreData.DLL 有二进制引用的项目中引用 1.DLL 和 2.DLL
  2. 将 CoreData 添加为对 BigProjectA 和 BigProjectB 的项目引用,而不是二进制引用

在第一种情况下,编译器不会自动输出 CoreData 的依赖项。如果将 CoreData 项目添加到解决方案中,则其依赖项 被输出。因此,要将 CoreData 用作二进制引用,您还必须引用其依赖项。

关于c# - 类库 - 引用 - 复制本地的可重用性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7521850/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com