机房收费系统
文章平均质量分 67
通过机房收费系统这个项目,学习到了很多的知识,以博客的形式总结下来,同时也想分享给大家。
千g
做最好的自己
展开
-
SQLHelper初见
四种类型原创 2017-08-05 11:03:37 · 308 阅读 · 6 评论 -
三层
一:程序分层的目的1.隔离/解耦合2.性能/安全性/可维护性/扩展性二:应用范围不需要三层:业务逻辑简答,没有真正的数据存储层三、物理上的三层显示层,业务层,数据层四、逻辑上的三层 显示层:UI 作用:向用户展示现特定业务数据采集用户的输入信息和操作 原则:用户至上,简洁 业务逻辑层:BLL 作用:原创 2017-05-05 15:37:05 · 543 阅读 · 15 评论 -
数据库——发展
【前言】开始机房的个人重构了,不免有些小激动。第一次做机房的时候没有自己建立数据库,现在一定要自己尝试着建立一下数据库,于是乎想到自考的时候考过一科《数据库系统原理》,所以再学习一遍这本书,温故而知新。【正文】Why?说到为什么,就要从数据库管理技术的发展说起,学习一个东西要知道为什么有它,它是从何而来,下面由我来介绍一下喽。数据库管理技术经历了4个阶段1.人工管理阶段原创 2017-05-14 18:06:25 · 449 阅读 · 13 评论 -
数据库——数据冗余与数据类型
数据库中数据表建立的过程中还是遇到了一个问题。例如:Card、Recharge、CancleCard表中,IsCheck是否退卡这个字段是每个表中都有,还是只在Card表中有呢?我是这么想的,如果每个表中都有的话,以后写代码的时候用到一个表中Ischeck字段的时候就不用查找其他的表,但是这样的话,与数据冗余又有些矛盾,等退卡了之后要更新3个表。如果只在Card表中有,数据冗余的问题没原创 2017-05-15 21:16:45 · 1077 阅读 · 15 评论 -
数据库——设计过程
数据库设计是完成一个系统很重要的一步。下面来介绍一下数据库设计的过程。数据库设计分6个阶段:需求分析、概念设计、逻辑设计、物理设计、数据库实施、数据库运行与维护,详细内容请见:数据库设计在这里我只简单的介绍一下我理解的概念设计、逻辑设计2个阶段。概念设计:根据用户需求,设计数据库的概念模型概念模型的抽象级别最高,特点如下:●表原创 2017-05-14 19:18:25 · 6113 阅读 · 14 评论 -
未能加载文件或程序集“DAL”或它的某一个依赖项。系统找不到指定的文件
【发现问题】【分析问题】1.代码出现在哪里?这个是在抽象工厂+反射在Factory层中出现的一个问题2.代码的意思? IUser = CType(Assembly.Load(AssemblyName).CreateInstance(classname), ILoginUser) IUser = CType(Assembly.Load(程序集名原创 2017-05-18 20:37:05 · 4451 阅读 · 26 评论 -
MDI——单例模式
【前言】又一次接触到单例模式,原先只是学习了一下理论,现在通过机房个人重构来具体实践一番【正文】Why? Private Sub ToolStripMenuItemHelp_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItemHelp.Click Dim help As New frmH原创 2017-05-22 17:59:29 · 819 阅读 · 29 评论 -
“ConfigurationManager”不是“Configuration”的成员
其实出现这个问题的原因就是:没有引用System.Configuration。那么引用它就可以了:右击SqlHelper——添加引用原创 2017-05-24 18:07:03 · 1038 阅读 · 27 评论 -
存储过程
【前言】以前学习的时候接触过存储过程,当时没有认真的研究它,只知道有这么个东西,现在就听我来唠叨一下存储过程【正文】Why?What?存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它原创 2017-06-01 20:05:44 · 453 阅读 · 15 评论 -
机房重构——清空与判空
【前言】机房重构的时候会遇到很多清空的地方,如果用有几个地方需要清空,直接写下面的代码就OK了。txtStudentNo.Text = "" txtName.Text = "" combSex.Text = ""原创 2017-07-28 10:52:33 · 335 阅读 · 32 评论 -
机房重构——全局变量
【前言】全局变量也不是第一次接触了,这次又一次深入的了解了一下什么是全局变量,如何来用全局变量。【正文】机房重构的时候要在Card_Info中加入登录窗体的用户名,可是怎么也添加不上去,最后了解了一下全局变量,终于成功啦,现在的心情还是有点小激动的。在VB.NET中声明全局变量有2种方法。一:使用公共模块,在模块中用Public声明全局变量,通过变量名来访问。Mod原创 2017-06-08 18:15:16 · 370 阅读 · 19 评论 -
机房重构——父窗体、子窗体的显示
第一次机房重构的时候就遇到这个问题,这是VB6.0时写的方法 机房收费系统—MDI窗体与子窗体在机房重构的时候是用的VB.NET写的,其实还是可以利用原先的代码的。只是不能再用PictureBox控件了,因为它不是容器,在它上面放置的控件就会在子窗体上面出现。所以接下来就选择用另一个容器Panel在模块中写上如下代码: Declare Function SetParent Li原创 2017-06-03 21:11:40 · 606 阅读 · 14 评论 -
机房重构——视图
视图是从若干个基础表或其他视图中构造出来的表,只是存储的SQL Select语句视图是一个虚表原创 2017-06-25 18:56:06 · 384 阅读 · 32 评论 -
SqlDateTime 溢出。必须介于 1/1/1753 12:00:00 AM 和 12/31/9999 11:59:59 PM 之间。
问题:在用.net敲机房的时候出现了如下问题原因:传给数据库的时间类型为NULL。在程序里定义了一个时间类型的变量,没有给赋值就传给了数据库。这时这个变量的值默认为01年01月01日。由于数据库中DateTime类型字段,最小值为1/1/1753 12:00:00,而.Net中,DateTime类型中,最小值为1/1/0001 0:00:00,显然,超出了SQL值得最小范围原创 2017-06-11 16:21:25 · 706 阅读 · 16 评论 -
机房重构 导出Excel
机房重构又遇到了导出Excel这个问题。方法一:添加Interop引用一、在U层添加一个引用2.在U层中添加一个模块,在其中协商导出的代码Imports Microsoft.Office.InteropImports System.Windows.FormsModule ImprotToExcel Public Function ImportToExcel(B原创 2017-06-17 16:37:35 · 543 阅读 · 28 评论 -
机房重构——DataTable转泛型
机房重构前期一直是用的DataTable来返回数据库中的值,当时没有感觉很麻烦,后来接触了泛型,才发现DataTable还是比较麻烦的。DataTable:不允许透明检索数据,应用程序和数据库是强耦合,对数据库结构的任何改变你都需要你的程序有所改动,这样就造成了代码和数据库耦合性更强。在你写U层代码的时候需要知道数据库字段的顺序。例如Dim table As DataTable原创 2017-07-06 20:29:30 · 346 阅读 · 13 评论 -
时间问题
机房重构,时间问题,可是困扰了我很长一段时间,最开始把实体层的时间设置为timeSpain类型,后来又设置为datatime类型,不管怎样,总是出现好多的问题。最后下定决心设置为string,类型,数据库字段的类型设置为time(7)类型该问题是由于数据库里面的类型为TimeSpan类型,实体里面为string类型,两者之间无法转化。原创 2017-07-16 21:37:12 · 345 阅读 · 26 评论 -
机房重构验收一重构系统
【前言】 今天上午师父给我验收了一下机房重构的项目,主要是验收的这个系统,没有从文档和UML上验收。但是今天的收获还是蛮大的,记录一下自己的成长。【正文】 在师父的提问中,让我成长了好多,主要有一下几点。 一、全局性: 自己要对自己的系统有充分的了解,能够概括性的描述自己的系统,主要从Why,What,How这3个方面来回答。原创 2017-07-25 16:36:57 · 386 阅读 · 39 评论 -
机房重构总结
机房重构这个项目已经完成了,是时候总结一下这段时间的感受。原创 2017-07-31 10:34:26 · 302 阅读 · 18 评论