知道多问bin文件几个为什么。是在出现下面这个问题时引发的。

        出现这种问题:未能载入文件或程序集“DAL”或它的某一个依赖项。

系统找不到指定的文件。
        原因可能是:1.路径不对。2.文件不存在。


        相信大家都遇到这种问题了,我和大家一样依照常规的方法:把DAL的路径改到E:\4.平时记录\UI\机房重构\UI\bin\Debug以下了,一般这样就能够攻克了。


        可是,我的没有解决。bin\Debug以下仍让没有有关DAL的dll文件。不知道为什么了。明明已经把路径改在那个以下了啊?例如以下图:


        没有办法,就手动拷贝到bin以下了,初步攻克了这个问题。

那么。还有一个问题又来了,为什么无论是Facade、BLL、Factory、IDAL、Entity都有,却只有没有DAL的dll文件呢?

        这个就和我们的七层有关系了,由于七层中U层引用Facade层引用BLL引用Factory、IDAL,都引用Entity,可是,没有那一层引用DAL,DAL层被独立了。没有在那一条线中,它是来实现IDAL接口层的。

所以,U层的bin以下没有DAL层的dll文件。可是,我们的程序启动项是U层,我们的D层要想执行,须要把DAL的动态链接库,放在U层以下。

參考博客:李社河:未能载入文件或程序集“DAL”或它的某一个依赖项。

系统找不到指定的文件。


那么,为什么这样能够解决呢?

为什么要把dll文件放在U层的bin以下呢?

        程序把U层设为了启动项,而运行U层就是运行U层以下的bin文件。

那什么是bin文件呢?为什么这么关键?

         bin (binary)既是:二进制, 里面存放的通常是可运行的二进制文件。

二进制即是机器代码,汇编语言编译后的结果。我们编译的是高级语言,把高级语言翻译为机器语言后。才干被计算机运行。
下面是机器语言:看到这个,对照一下,感觉咱们学习的高级语言简单多了。

^_^


这些二进制文件都在bin\Debug中。我们知道了什么是bin。那么Debug呢?
        世界最早的一批程序设计师之中的一个,葛丽丝·霍波,有一天,她在调试设备时出现问题,拆开继电器后。发现有仅仅飞蛾被夹扁在触点中间。从而“卡”住了机器的执行。于是。霍波诙谐的把程序故障统称为“臭虫(BUG)”,把排除程序故障叫DEBUG。而这奇怪的“称呼”。竟成为后来计算机领域的专业行话。如DOS系统中的调试程序。程序名称就叫DEBUG。


        总结:机房重构不不过完毕一个能够执行的项目就能够了。更重要的是,进行中遇到问题。一定要耐心解决。这能够说更加有意义。自己遇到问题时,有逃避的心里。想着问其它人能够非常快得到答案,却这样轻易的剥夺了自己成长的机会。

在自己耐心的摸索一些东西后,发现挺有意义的。



posted on 2017-05-09 14:29  lxjshuju  阅读(1424)  评论(0编辑  收藏  举报