这些天,我在试着用工厂模式和接口来做三层架构的时候,碰到一个问题,开始是非常棘手啊!!
调试了半天也没有发现问题的所在,只是objType = Assembly.Load(path).CreateInstance(CacheKey); //反射创建这一句的时候老是出错。。我唯有改成创建我需要的某一个具体的类进行调试的时候,才一个个问题解决;
但问题来了,我解决掉那里之后,改回来还是不行啊;
在经过多次调试发现,Assembly不是有关程序集操作的类吗;
所以将之改成程序集名称,同时也把程序集的名称改成命名空间的前缀;
统一用PowerNet.DataLog;将命名空间的前缀改成程序集的名称(在此要修改一下程序集的名称“工程名”->“属性”里面就以修改);
这样就调试通过了;
说明:本代码中用到的这些都是通过一个生成代码的工具生成的,这个生成工具非当没有让我尝到“甜头”反而让我苦了不少,当然也正因如此,也对于三层架构和工厂模式有了进一步深入的一点点了解吧;呵呵...有的时候这些工具生成的代码的确感觉编译通过不了。调试很久也无奈,但试着顺藤摸瓜一个个有耐心地去解决的话。还是能够搞定的。当然最重要的是在这个过程中能学到不少东西;
下面是DALFactory整个类DataAccess的源码























































































如果大家觉得我说得不太清楚或还有什么其它的问题可以回复;
大家一起讨论和学习一下;
共同进步!!