这是设置程序如何查找所用程序集的配置节声明。
www.microsoft.com/china/MSDN/library/enterprisedevelopment/softwaredev/misbasicinstincts.mspx
www.microsoft.com/china/MSDN/library/enterprisedevelopment/softwaredev/misbasicinstincts.mspx
找不到,就做为私有程序集去找。这个顺序是:
假设程序集名称是MyLibrary.dll,程序目录是x:\bin
x:\bin\MyLibrary.dll
x:\bin\MyLibrary\MyLibrary.dll
x:\bin\MyLibrary.exe
x:\bin\MyLibrary\MyLibrary.exe
要改变这个顺序呢,必须向应用程序配置文件中添加<probing>元素,以便为 CLR 提供线索。
例如这样:
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="MyAssemblies"/>
</assemblyBinding>
</runtime>
</configuration>
则查找顺序变成:
x:\bin\MyLibrary.DLL
x:\bin\MyLibrary\MyLibrary.DLL
x:\bin\MyAssemblies\MyLibrary.DLL
x:\bin\MyAssemblies\MyLibrary\MyLibrary.DLL
x:\bin\MyLibrary.EXE
x:\bin\MyLibrary\MyLibrary.EXE
x:\bin\MyAssemblies\MyLibrary.EXE
x:\bin\MyAssemblies\MyLibrary\MyLibrary.EXE
知道了这个顺序,再看为什么找不到dll.