您的位置:首页 > 编程语言 > C#

C#版三层实例——三大高手各显神通(实战篇2)

2014-11-12 11:45 127 查看
话说“未能找到元数据文件‘xxx.dll’”这个问题困扰了我差不多十个小时,看看这三大高手是如何一步一步解决的,其中自己也学到不少。

高手One——先易后难

曾经多少次告诉自己不管是做事还是考试,都应该遵循先易后难的原则,但一遇到问题又忘了,遇到一个问题不解决就绝不会解决下一个问题,其实这是最不好的做法,效率也是最低的,这是我从这个高手身上所学到的。

当看到我的程序之后,他做的第一件事就是重新生成解决方案,然后VS就提示有哪些错误了。咦,除了“未能找到元数据文件‘xxx.dll’”这个问题之外,又出现了另一个问题:并非UserDAO.cs 所有的代码路径都有返回值,这个问题比较好解决,添加了一个返回值之后就解决了。高手看了一遍代码,一句一句地说着其中的逻辑关系,但第一个问题还是没有解决。





高手 Two——调试

平时一出现Bug不会首先想到的是调试,而是先想其中的逻辑是否正确,其实调试是最能精确找出问题的,可以看出程序是否按照我们的逻辑执行了,如果没有按照我们所设计的逻辑执行,那又是什么原因。从这个高手身上,我学到了当程序出现问题的时候先去宏观看逻辑,如果大的方向上没有问题,然后再进行逐语句、逐过程调试。

看来程序是没有问题的了,但为什么还是提示“未能找到元数据文件‘xxx.dll’”!!!该引用的也引用了,输出路径也没有问题,那是什么呢。在“资源管理器”里引用不行,那就试试在“编辑器”中添加引用,如图:




最后再“重新生成解决方案”,终于能在“解决方案资源管理器”中出现了 .dll 文件,如图:




终于把“未能找到元数据文件‘xxx.dll’”这个问题给解决了。但结果还是没有运行出来~~~~~

高手Three——发现了低级错误

问题一个一个解决了,问题也一个一个出现了。为什么运行的时候窗体不显示呢,并且我已经把U层设置为启动项目了,这是???调了半天,高手顿时恍然大悟,我数据库里是否存在这个用户!!!结果是如他所料了。因为我这是第一次使用抛出异常语句,对于程序所抛出的异常还是不敏感,而且在程序里我并没有对所抛出的异常进行处理,然后自己也被异常给抛晕了。当我使用正确的用户名登录的时候,一切OK。




从这高手身上我学会了学习要脚踏实地、不骄不躁,思考着地去学习,这样的收获才是真的收获。

小结

这是一个很简单的三层实例,虽然简单,但也遇到了不少问题,这个简单的“登录实例”让我简单了解了三层之间是如何调用、如何理解层之间的关系、如何实例化以及变量的命名。这个实例没有实际意义,只是单纯地说明三层思想而已。后来自己又理解着敲了几遍之后,试着自己去解决出现的问题,其实我也可以。这就是小菜和高手的区别呀,多多实践!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: