B.dll --> C.dll-6ren">
gpt4 book ai didi

c# - 如何在 C# 项目中设置 "Copy Local Dependencies"[CopyLocal 问题]

转载 作者:太空狗 更新时间:2023-10-30 00:45:49 25 4
gpt4 key购买 nike

我有一个名为 A.dll 的程序集,它有一个对名为 B.dll 的程序集的项目 引用。引用 B.dll 的程序集有一个对 C.dll 的二进制引用。

A.dll --> B.dll --> C.dll

我在 A.dll 中将 B 的“Copy Local”设置为 true,在 B.dll 中将 C.dll 的“Copy Local”设置为 false。

无论如何,当我构建 A.dll 时,我在结果文件夹中以 C.dll 结尾。为什么不考虑B.dll到C.dll的“Copy Local”值?

谢谢

最佳答案

那是因为 msbuild 能够找到 c.dll。它对 B 项目的复制本地设置一无所知。它只是查看 b.dll 元数据中的 .assembly 指令,发现 c.dll 是一个依赖项。如果它能找到 c.dll,它就会复制它。如果找不到它,则什么也不会发生,也不会发生任何投诉。

奇怪的是,您的解决方案是 c.dll 与 b.dll 位于同一目录中。它是怎么到那里的?只要阻止它被复制到那里,它也不会被复制到 A build 目录。否则你会如何期望它运行是非常模糊的。

关于c# - 如何在 C# 项目中设置 "Copy Local Dependencies"[CopyLocal 问题],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4712552/

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