6

我打算在我的 .NET 3.5 Windows 应用程序的 bin 文件夹以外的文件夹中保留几个 dll。我不确定如何使用代码库元素或探测元素来指定正确的路径。这就是我现在在 app.config 文件中的内容,

<runtime>
 <assemblyBinding>
  <dependentAssembly>
    <assemblyIdentity name="CommonLib" publicKeyToken="f0b5026b59d5645e"   
     culture="neutral" />
    <codeBase version="1.0.0.0" href="SharedFolder\CommonLib.dll" />
  </dependentAssembly>
 </assemblyBinding>
</runtime>

我明白了,在运行时无法加载程序集错误。看来我在配置文件中做错了什么。SharedFolder 是添加到项目中的文件夹。

4

2 回答 2

8

似乎 codeBase 元素用于获取带有 URL 的文件,您是否尝试过使用探测元素

<runtime>
 <assemblyBinding>
  <dependentAssembly>
    <assemblyIdentity name="CommonLib" publicKeyToken="f0b5026b59d5645e"   
     culture="neutral" />
  </dependentAssembly>
  <probing privatePath="SharedFolder"/>
 </assemblyBinding>
</runtime>
于 2009-12-14T16:15:06.473 回答
1

谢谢尤里。问题是路径。privatePath 值需要是 .NET 运行时可以到达的路径。我试图“SharedFolder”,它不在 Debug 文件夹内,它直接在项目文件夹下。

于 2009-12-16T17:59:12.383 回答