Discuz源码的一点心得

今天同事参照Discuz的框架做一个小东西,框架搭的差不多时,提到其中有一个地方不太明白:

在Discuz.Web中没有添加Discuz.Data.SqlServer的引用,如图:

Discuz源码的一点心得

但运行时没有任何问题,而他的框架中不添加dll引用,会导致运行失败抛出异常(编译都通过),

我简单看了下Discuz的源码:

  
    
dllver_discuzdatasqlserver = LoadDllVersion(HttpRuntime.BinDirectory + " Discuz.Data.SqlServer.dll " );

看来是用了反射去动态外部程序集,从而可以不添加引用,也可参见我的这篇反射的文章,

Discuz的源码我还没有看完,这只是我的一点儿拙见,有不足之处,欢迎指正,谢谢!

你可能感兴趣的:(discuz)