默认情况下,.net程序对外部程序集dll的搜索路径是exe文件所在的目录,虽然这种方式没有什么太多不好的地方,但是当我们引用外部程序集较多的时候显得非常杂乱。一种比较常用的解决方式是通过配置在app.config中添加私有搜索路径实现:

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    
<probing privatePath="Libs"></probing>
    </assemblyBinding>
</runtime>

这样,程序启动后除了当前目录外,还会在Libs文件夹中加载DLL,这样我们就可以把一些外部DLL放到Libs文件夹中了。

另外,这个配置是还支持多个路径的,以引号分割即可:

    <probing privatePath="Libs; Libs\Datas; "></probing>

当然,制定程序集的加载路径的方法不止这一种,更多知识请参考MSDN文章:指定程序集的位置

posted on 2014-03-02 17:18  天方  阅读(1294)  评论(0编辑  收藏  举报