递归复制本地

Recursive Copy-Local

关于 msbuild 中的本地复制的另一个问题。

我遇到的问题是复制了太多程序集。

我有以下结构:

现在两个第三方库被 B.dll 引用,本地副本设置为 false。无论如何,它们都会出现在目标环境中。 B.dll 是 A.dll 的依赖项,本地副本设置为 true。我需要 B.dll 我在哪里部署 A.dll。

现在的问题是两个第三方程序集也被复制了。我不想这样,我不明白为什么会这样。

有一点可能很重要:生成 A 和 B 的项目在不同的解决方案中。

有人知道发生了什么事并提示如何解决吗?

尝试设置

<PropertyGroup> 
  <UseCommonOutputDirectory>true</UseCommonOutputDirectory>
</PropertyGroup>

在B项目中。这会阻止 MsBulid 处理对 OutputPath 的引用。