敲七层登陆的时候遇到这个问题,报错代码如下
return (IDAL.LoginIDAL)Assembly.Load(strDB).CreateInstance("DAL.LoginDAO");//这里需要把类类型转换为接口类型
百度的结果是类需要把接口实现才能实现强制转换,回头检查发现没有任何问题,这个类已经实现这个接口了。整个都检查下来都没有发现问题,代码都没错,但是就是会报错,到底是哪的问题呢?
经过不断的测试发现,我的这个接口是我从另一个地方复制过来的,虽然看起来跟接口一模一样,但是这个“接口”是用vs创建的类,虽然改了名字改了关键字从表面上看不出来,但是依然摆脱不了是类的本质。
代码上看不出问题的时候,可以再考虑一下添加的项目是否匹配。