如何为我的.net应用程序辅助位置查找依赖程序集?

Nat*_*ley 2 .net

我确信这是在另一个问题的某个地方被问到的,但那里使用的措辞显然不够通用,很容易找到.

如何告诉我的Windows窗体应用程序有关辅助位置的信息,它可以在运行时找到它可能需要的程序集?我不是在谈论使用反射来发现插件,但已经被编译成汇编,但可能位于一个子目录,而不是依赖,而与调用程序集并排侧.

Ant*_*lev 9

您可以通过应用程序配置文件:assemblyBindingelement 来执行此操作,更准确地说probing:

<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
         <probing privatePath="bin;bin2\subbin;bin3"/>
      </assemblyBinding>
   </runtime>
</configuration>
Run Code Online (Sandbox Code Playgroud)

这将迫使运行时以寻找组件bin,bin2,bin2\subbinbin3目录,所有这一切都是在应用程序的基目录的子目录.