C#机房重构
在学习了C#和设计模式之后,使用C#语言对第一次机房收费系统进行了重构,在重构的时候用到了设计模式,也遇到了一些问题,将这些问题总结一下,与大家一起分享。
不开花的玫瑰
放荡不羁,瑀瑀独行。
展开
-
C#重构之职责链模式的使用
前言 之前我们一起学习了设计模式,那设计模式具体应该如何应用呢?现在我们来一起看一下职责链模式在重构中的应用吧。内容 1.什么是职责链模式? 职责链模式是使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 2.在机房中的应用 下机算钱的问题:小于准备上机时间→小于最少上机时间→正常收...原创 2018-10-13 21:08:53 · 278 阅读 · 12 评论 -
C#重构之修改学生信息
前言 对学生的信息进行维护的时候会涉及到对学生信息的修改,那如何确定要修改的是哪个学生的信息呢?这里就涉及到了从一个窗体的DataGridView控件选中值后把值传给另一个窗体上,现在我们一起来看一下是如何实现的吧!详解 ...原创 2018-09-30 17:09:27 · 886 阅读 · 18 评论 -
命名空间“System”中不存在类型或命名空间名“Data”
前言 本阶段大家用的基本上都是visual studio,在使用的过程中,大家有没有遇见下面这个问题呢?且听小编细细道来。详情 在代码中需要使用DataTable,于是出现下面这个错误: 这个相信大家都知道如何解决,没错,就是添加using指令集即可,但是添加完成之后又出现了下面这个问题: 就是我输完System之后点不出来后面的Data,这就很奇怪...原创 2018-07-29 16:37:15 · 5014 阅读 · 22 评论 -
web端登陆后无法退出问题
前言 我祈祷拥有一颗透明的心灵和会发现的眼睛,给我再去尝试的勇气,Oh越过错误去拥抱你,每当我找不到发现的意义,每当我迷失在错误里,Oh夜空中最亮的星,Oh请指引我靠近你。问题 最近再弄永和的时候出现了下面这个问题: 点击“退出系统”,然后确定之后按理说应该退出系统了,但是这个并没有,所以就开始尝试如何去解决该问题。方案一–提升管理员权限 这个咱们在下四楼...原创 2018-08-05 21:22:12 · 944 阅读 · 12 评论 -
c#机房重构小知识
前言 遇到不会的就去查。在进行重构的时候遇到了一些不理解的代码和一些小问题,今天呢,我就来总结一下,大家一起来看看自己有没有遇见呢?内容 Bit Bit称为位数据类型,其数据有两种取值:0和1,长度为1位。在输入0以外的其他值时,系统均把他们当成1对待;这种数据类型常作为逻辑变量使用,用来表示真,假或是,否等二值选择。在数据库设计时,我的state字段和Ischeck字段就...原创 2018-08-12 20:59:16 · 236 阅读 · 21 评论 -
c#-七层登录
前言 在三层之后,我们接触到了七层登录,在七层中,我们接触到了外观模式,工厂模式和接口隔离原则,相应的也就比三层多了三个层(三层本身具有一个实体层):Facade、Factory、IDAL,那么现在我们就一起来了解一下七层登录吧!过程 1.新建层 打开VS→新建项目→类库→删除默认类→建立自己的类,这就是一个层的建立过程,建立其他层的话可以直接右击解决方案→添加类库→删...原创 2018-08-15 20:24:35 · 381 阅读 · 28 评论 -
c#重构之存储过程
前言 进行重构的时候,可能实现一个功能需要走好几遍七层,以我的为例,比如注册:注册之前先判断卡号是否存在,注册后需要往student表和user表中添加记录,注册的金额要同步到RechargeCard表中,这样的话需要走4遍7层,会有很多相似的代码,为了解决代码冗余的问题,故使用了存储过程。过程详解 是什么 存储过程(StoredProcedure)是在大型数据库系统中...原创 2018-08-26 17:26:21 · 283 阅读 · 25 评论 -
c#重构之判断权限
前言 一般的软件登录之后都会判断一下权限,如果你只是普通的用户,我没有必要把所有的功能都给你显示出来,只显示最普通的权限即可。这次的机房也不例外,那结合对于七层的理解,如何根据输入的用户ID来判断你的权限呢?详解步骤 BLL层: public DataTable levelBLL(Entity.UserInfo UserInfo) { ...原创 2018-09-02 20:48:26 · 339 阅读 · 7 评论 -
c#重构之获取时间
前言 在进行重构的过程中,由于是机房收费系统,不可避免的会涉及到日期啊,金钱之类的东西,所以呢,今天小编就和大家一起来探讨一下获取时间的几种方法。详解 1.当表中只需要一个时间时,可以使用设计表中该字段的“默认值或绑定”: 这样的话,当你往表里添加一条记录的时候,数据库就会自动添加系统当前的时间了; 2.第一种方法呢,只适合于只有一个时间的表,但是实际上呢,我...原创 2018-09-09 20:10:25 · 232 阅读 · 8 评论 -
c#重构之DataGridView控件
前言 在重构进行查询的过程中,我们会接触一个控件:DataGridView,对于这个控件,在不同的场合会有不同的属性设置,现在我们就一起来看一下这个控件的属性设置。详情 1.基本窗体的设置 这个设置是大多窗体都是这样设置的基本属性,调整行和列的模式这个可以根据需要自由选择,如果想让表格里面的内容铺满整个表格的话可以直接把其属性设为Fill,这样就会平铺整个表格了。...原创 2018-09-16 17:01:54 · 870 阅读 · 17 评论 -
C#重构之透过查询学生基本信息看组合查询
前言 组合查询可以看成系统的亮点和难点吧,学完设计模式之后,组合查询便可以使用模板模式进行操作,同时,之前咱们也进行过存储过程的讲解,所以,组合查询可以结合设计模式和存储过程,现在我们以查询学生基本信息为例,来看看组合查询。详细过程 1.建一个基类,基类的代码: protected virtual void ToDgv(Entity.GroupCheck GroupCheck) ...原创 2018-09-23 16:34:48 · 324 阅读 · 22 评论