将输出引用程序集构建到子文件夹

Build output reference assemblies to subfolder

背景

第三方应用程序正在加载我的程序集(一个 DLL),我无法控制它的加载方式。第三方应用程序将加载给定目录中的所有程序集。

问题

如果我的程序集和另一个程序集使用相同的库,但版本不同,它们将位于同一目录中并且会发生冲突。我已经研究了 <probing> 配置文件指令和程序集解析器,所以我知道如何创建子目录并让我的程序集在其中搜索引用。

需要

我需要一些方法来配置 visual studio 以将我的主 DLL 构建到根文件夹中,并将所有引用构建到子文件夹中。最好在构建期间(因为我将构建配置为直接转到正确的文件夹。

您可以将参考文献放在单独的文件夹中。方法如下:

  • 将文件夹添加到您的项目根目录。

  • 将文件夹重命名为适当的名称。

  • 右键单击文件夹,然后从添加 -> 现有项目

  • 现在 select 添加任何参考程序集到此文件夹。 您可以将文件添加为 link

  • 右键单击引用并转到添加引用 -> 浏览

  • 导航到您新创建的文件夹和 select 个程序集。

  • 将每个引用的复制到本地设置为True

  • 构建您的项目。