机房收费系统重构(3)——未处理FileNotFoundException

背景:机房收费系统重构拖了好长时间了,延期了三次,为了不使事情发展得更加严重,师傅下了“最后通牒”,顿时压力满满的,不过这种事情怪得了谁?还不是自己找的,之前那么多时间自己都没有好好利用,现在没有时间了,压力自然就来了!没有压力就没有动力,这句话还是有道理的,自从师傅给了压力,自己才感觉到自己忙碌了起来,这两天一直都很充实,感谢压力......在忙碌的同时,问题也是层出不穷,刚刚解决一个,又冒出来好多个,这不问题来了......


一、遇到问题


    未处理FileNotFoundException,未能加载文件或程序集“DAL”或它的某一个依赖项,系统找不到指定的文件。

机房收费系统重构(3)——未处理FileNotFoundException_第1张图片


二、解决方法

    

     查了一些资料,这个问题终于得到解决,感谢互联网,它简直太强大了微笑


1、什么是反射


    Reflection,这是.Net中获取运行时类型信息的方式,.Net的应用程序由几个部分:‘程序集(Assembly)’、‘模块(Module)’、‘类型(class)’组成,而反射提供一种编程的方式,让程序员可以在程序运行期获得这几个组成部分的相关信息。

    通过反射,可以在运行时获得.NET中每一个类型(包括类、结构、委托、接口和枚举等)的成员,包括方法、属性、事件,以及构造函数等。还可以获得每个成员的名称、限定符和参数等。


2、反射的一个原则


     一切皆以UI层的bin文件夹下的dll名称为中心。(原因:.NET类的加载的机制就是默认从本程序集的bin文件中找,所以bin文件夹中一定要有要加载的程序集的dll)


3、问题原因


(1)DLL文件名与加载时的DLL文件名不一致

(2)DLL文件根本不存在,即出现丢失的情况

(3)加载DLL路径错误,即DLL文件存在,但是加载的路径不正确(一般都是D层的DLL文件加载错误)


4、解决步骤


D层——〉属性——〉编译——〉生成输出路径——〉重新生成解决方案


机房收费系统重构(3)——未处理FileNotFoundException_第2张图片


机房收费系统重构(3)——未处理FileNotFoundException_第3张图片


三、心得体会

   

    问题成功解决啦,哈哈,每每解决一个问题都会兴奋好一阵,看来压力在这解决问题的过程中,起到了至关重要的作用。

    完全没有心理压力的情况是不存在的。我们假定有这样的情形,那一定比有巨大心理压力的情景更可怕。换一种说法就是,没有压力本身就是一种压力,它的名字叫作空虚。无数的文学艺术作品描述过这种空虚感。那是一种比死亡更没有生气的状况,一种活着却感觉不到自己在活着的巨大悲哀。

    感谢适当压力的存在......

     

你可能感兴趣的:(编程,.net,重构,解决方案)