背景

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

问题

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

需要

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

最佳答案

您可以将引用放在单独的文件夹中。方法如下:

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

  • c# - 将输出引用程序集构建到子文件夹-LMLPHP
  • 将文件夹重命名为适当的名称。

  • c# - 将输出引用程序集构建到子文件夹-LMLPHP
  • 右键单击文件夹,然后从添加->现有项

  • c# - 将输出引用程序集构建到子文件夹-LMLPHP
  • 现在选择并将任何引用程序集添加到此文件夹。您可以将文件添加为链接
  • 右键单击引用,然后转到添加引用->浏览
  • 导航到新创建的文件夹,然后选择程序集。
  • 将每个引用的“复制到本地”设置为True。
  • 构建您的项目。
  • 关于c# - 将输出引用程序集构建到子文件夹,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40370389/

    10-12 12:36
    查看更多