在app.config </codebase>中使用<codebase>元素

时间:2009-12-14 16:07:43

标签: .net codebase probing

我打算在我的.NET 3.5 Windows应用程序的bin文件夹以外的文件夹中保留几个dll。我不确定如何使用codebase元素或探测元素来指定正确的路径。这就是我现在在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是添加到项目中的文件夹。

2 个答案:

答案 0 :(得分:8)

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

<runtime>
 <assemblyBinding>
  <dependentAssembly>
    <assemblyIdentity name="CommonLib" publicKeyToken="f0b5026b59d5645e"   
     culture="neutral" />
  </dependentAssembly>
  <probing privatePath="SharedFolder"/>
 </assemblyBinding>
</runtime>

答案 1 :(得分:-1)

谢谢Yuriy。问题是路径。 privatePath值必须是.NET运行时可以到达的路径。我试图将“SharedFolder”放在Debug文件夹里面,它直接位于项目文件夹下。