异常:未能加载文件或程序集”DAL”或它的某一个依赖项——解决办法

下面是我再使用抽象工厂+反射重构机房时,在Factoy中出现了下面一个问题:


去网上查了一下资料,发现这是一个很普遍的问题,它出现的原因主要有两种:

第一种:

加载DLL路径错误解决办法是调整D层生成DLL的路径到UI的bin文件夹中。如下图:


反射的一个原则是:一切皆以UI层的bin文件夹中的dll名称为中心,说白一点,dll就是一个类库。我理解的反射,就是一串拼接的字符串,组成要实例化的类的名字。使用反射加载类时,认是从UI层中的bin中找的,所以要在UI的bin文件夹下生成D层类的dll,这样才能顺利加载。

第二种:

是对第一种异常的扩张,异常名称为:未能加载文件或程序集”DAL”或它的某一个依赖项。试图加载格式不正确的程序。这个异常主要是由于引用的项目.net版本与启动的框架不同引起的。如操作系统是64位的,但发布的程序引用了一些32位的ddl,所以出现了兼容性的问题。
解决方案一:如果是64位机器,IIS——-应用程序池—高级设置——启用32位应用程序 :true。
解决方案二:修改项目属性——生成——目标平台(比如,X86\X64)

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...