从王继彬的三层视频学习结束之后,我的第二遍个人重构VB.NET版机房收费系统,就这样在廊坊春夏交替的季节中开始了,开始的开始,从不会敲,到慢慢上手,这一个过程,毫不夸张的说,自己有种快要到临界点的感觉,因为不真心知道从哪儿下手,可是一路走来,想起那句话,踏雪无痕,生活总是不免柴米油盐酱醋茶的平凡,更是难挡喜怒哀乐聚散离的纠葛。就像学习,从来都来不得半点马虎,所有的学习过程,都需要我们亲自去经历,去...
分类:
其他好文 时间:
2014-08-15 00:00:26
阅读次数:
370
前几天一直在讲设计模式,在和师哥师姐的讨论过程中,发现能在机房收费个人重构版中用到好几个设计模式,首先来讨论讨论职责链模式:
首先当看见这个模式的第一眼就觉得这是一个很简单的模式,可是当使用起来真的得考虑许多,首先要明白什么是链?链是一系列节点的集合,可以灵活拆分再重组。这也是与 链表不同的地方,用户可以去访问节点中的任何一点作为开始节点。
定义:使多个对象都有机会处理请求,从而避免请求的发送...
分类:
Web程序 时间:
2014-08-14 23:54:26
阅读次数:
382
当.Net编译器编译你的c#或vb.net程序时, 程序员的程序并不会编译为原生的机器语言,而是编译成为了通用中间语言指令(CIL)。 CIL是介于源代码和本地代码的中间的语言,当你的程序运行,不是直接执行的机器代码,而是由.NET框架解释执行。 正因为如此,你的应用程序或库的源代码,可以很容易.....
分类:
Web程序 时间:
2014-08-14 20:10:49
阅读次数:
207
事实上,先前刚刚開始敲机房的时候,刚用到DataGridView的时候,总显得力不从心,先要一下子就学会,看了非常多的资料,但是依照写的时候,自己有不知道从什么地方下手,于是,当自己用查询SQL语句,并用DataGridView显示出来,这个功能不能实现,但这里给大家写一下,假设有什么地方不好的会....
Cookie (HttpCookie的实例)提供了一种在 Web 应用程序中存储用户特定信息的方法。例如,当用户访问您的站点时,您可以使用 Cookie 存储用户首选项或其他信息。当该用户再次访问您的网站时,应用程序便可以检索以前存储的信息。C#.net部分创建Cookie方法 (1)Respons...
分类:
Web程序 时间:
2014-08-13 21:39:17
阅读次数:
231
vb.net是vb与面向对象技术结合的产物。90年代,基于面向对象的vb6使编程变得快捷、方便。但是随着社会的发展,软件要解决的问题越来越复杂,基于面向对象已经不能满足要求了。我们知道面向对象技术能解决大型复杂问题。随着面向对象技术的发展,vb加强了对面向对象技术的吸收,最终形成vb.net。
vb.net继承了vb的优点,比如可视化开发、语法逻辑清晰等等。也继承了vb的数据类型、运算符...
分类:
Web程序 时间:
2014-08-12 19:03:44
阅读次数:
225
上篇文章《机房重构(3)——存储过程》介绍了存储过程的使用,接下来介绍一下触发器的使用。说到触发器,我们并不陌生,我们学习过程中涉及到很多相关的知识,但是欠缺的实践应用。通过这次机房收费,对触发器有了进一步的理解。
1、简介
触发器也是一种与表事件相关的特殊的存储过程。由事件来触发,当对一个表进行操作(insert,delete,update)时就会激活它执行。经常用于...
分类:
其他好文 时间:
2014-08-12 00:46:23
阅读次数:
256
既然是使用VB.NET语言对机房收费系统进行重构,那么无可避免的要去解决组合查询的问题,在VB版的实现中这是一个难点,不过大家还是依靠自己或者共同的智慧解决了这个看似复杂的问题。
如今编程的语言不同是一方面,更重要的是系统的结构不一样了,采用了三层架构去实现系统,这样一来就要考虑组合查询的在三层结构中的实现方法。当然,组合查询的核心办法是不变的,都是通过将查询的各个条件组装成S...
分类:
数据库 时间:
2014-08-11 21:35:22
阅读次数:
311
在机房收费系统中,我们需要对文本框和组合框重复进行判断,确保不为空;该判断有两种情况,第一种,判断窗体中所有文本框组合框是否为空,第二种,判断一部分文本框,组合框是否为空。对于卡号和学号等我们需要判断用户输入的是否是数字,几乎每个窗体都需要进行相类似的判断,一个一个去写,熟悉了代码没错,可是,这个方法似乎不是那么聪明哈,这个时候,我们就可以定义一个类,专门用来进行判断,使用该功能的窗体直接调用类中...
分类:
其他好文 时间:
2014-08-11 08:28:31
阅读次数:
184
经过一段时间的学习,查阅各种资料,询问高手,对于机房收费系统的代码编写渐入佳境,同时在遇到问题后也不再茫然失措,而是静下心来去找到问题的根源,进而找到解决的办法。
在使用泛型集合作为函数的返回值的实践中,遇到了一个很普遍的问题,那就是在将DataTable类型的返回结果转换为以实体类型为集合元素的泛型集合List的过程中,由于数据类型的转换导致的错误,具体如下图所示:
...
分类:
其他好文 时间:
2014-08-11 00:31:11
阅读次数:
217