您的位置:首页 > 其它

【机房重构】——错误中成长

2015-05-17 16:22 113 查看

背景:

        本来系统好好的,但今天一打开:180多个错。天呐~~~一下就晕了。整了不到半个小时,就坐不住了。赶快叫救兵前来助阵。怎么办,马上就验收了,真的有些心慌了~~~

问题

        虽然看上去有小200个错,但错误类型就两个:(但没来得及截图,下次遇到问题,先截图留念,有图有真相)

问题一:找不到dll文件

        这类问题后来我了解到,有这几个原因:

        1:DLL文件名与加载时的DLL文件名不一致。

        2:DLL文件根本不存在,即出现丢失情况,或没有生成,或生成路径错误。

        3:加载DLL路径错误,即DLL文件存在,但加载路径不正确

        最终发现我的情况是第二种。ChargeBLL\bin\Debug中是空的,本该有的下面这一堆文件,它都没有

        


        最开始:尝试把其它debug文件中的相应文件拷贝到B层的debug中,但一重新生成,文件又都不翼而飞了。我心里那叫个着急啊~~~时间一分一秒的过,但没什么效果,心里那叫个慌啊~~本来好好的东西,这是怎么了。

        最后将所有层的程序集名称, 根命名空间都重新输入了一遍(必须和各个项目的名称相同),再将各个项目重新生成了一遍,解决了......
        


       今天还遇到一个问题:DALFactory出现"未能加载文件或程序集“DAL”或它的某一个依赖项。系统找不到指定的文件”的解决方案 

        单步调试,问题出在:抽象工厂+配置文件+反射这块。

        这个问题其实也是缺少dll文件造成的。

        


        D层的生成输出路径应该为:U层\bin\Debug\  而不是D层的Debug

为什么呢??

        反射的一个原则:一切皆以UI层的bin文件夹中的dll名称为中心。(原因很简单:.net类加载的机制就是默认从本程序集的bin文件中找,所以bin文件夹中一定要有要加载的程序集的dll)。UI层中bin文件夹中dll叫什么名字AssemblyPath就使用什么名字,bin内部类的全名叫什么,className就写成什么全名。.net中的引用:加入对某个程序集的引用就能在程序集有变化时自动拷贝dll。——李社河csdn博客


问题二:引用混乱的问题

背景:

        错误理解了师父的意思:最初敲机房的时候是三层,师父说直接在三层基础上敲七层就行。师父的意思是架构可以在这个基础上直接改就行,但我怎么做的呢?三层的就还是三层,后面没敲的窗体功能用的七层。这就导致了引用混乱的问题:为实现七层:B层引用了Factory和IDAL。为了让之前的三层依然能用,不得不让B层继续引用D层。

        我的问题在哪呢?一个字:懒~~~

        懒的结果是什么呢?花费更多的时间来调错,改错,最终三层的还得弄到七层,得不偿失,自己给自己找麻烦。

        最终怎么解决的:将所有引用关系都删掉,重新引用。(当然,这次B层就别引用D层了)

心态(重点)

        好,重点来了。上面那些写的可能有点乱,每个问题解决的根本原因在哪也不是很清楚。

        但我想说的是:调错就是查查,找找,点点.....然后在调的过程中,再发现问题,解决问题。

        那在这个过程中:真儿真儿的感受到,这个心态的重要性:
        看到180多个错,我第一感觉就是:胆怯、着急。从心底不太接受它,感觉又要耽误我的时间了,自己没调多久,就搬来了救兵。他们是什么心态呢?两个字:兴奋

       

尤其这两位:

        盖:这个问题我见过,让我再试试。

        华仔:我好久没遇到过错误了,总想有点错,但每条线敲完,总是成功.....我来给你调调

        看看人家这心态。我真儿真儿的有了羞愧感。

        当然最重要的人物还有唐唐童鞋,一直鼓励我......

        若不是大家的劲头给了我动力,我肯定就拿出最近一次的备份重新做了。通过这次,我也明白了:没有什么问题是解决不了的。

总结(重点)

        在这里,不就是一个犯错改错的地方吗??没有错误,怎么成长?????

        敲系统,不就是为了让我们出错调错吗??不调错,怎么进步??????

        在这里,练的就是心态,遇到错就胆怯,抵触,进步不会很大的,因为最重要的没有拿到手。
        师哥师姐经常反馈回来信息:在公司很多问题除了我们没人能解决。我若一直像我现在这个样子,怎么能到他们的境界。况且现在面对的仅仅是一个小小的机房~~~~

        每个错误都是我们通向成功的一个阶梯。都是我们前进机会,别人巴不得有这样的机会锻炼自己。
        
        拒绝错误,就是在拒绝进步。现在不锻炼,什么时候练??在公司能有这样的机会???得了吧......为什么我们能拿那么多钱,其实就是因为我们不怕犯错......

        所以:我现在需要做的就是调整心态,不要自己堵自己的路。不要拒绝机会。

        从今开始,欢饮错误来访~~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息