摘要: 持续重构,其乐无穷。一:发现问题 先来说如何重构业务层的try{}catch{}finally{}代码块,我看过很多代码,异常处理这一块大致分为两种情况,一种是每个方法都大量的充斥着try{}catch{}finally{},这种方式的编程已经考虑到了异常处理,还有一种就是没有try{}catch{}finally{}的代码,因为根本就没有考虑代码的异常处理。每当我看到这样的代码,我都很忧伤。从程序的健壮性来看第一种还是要比第二种情况好,至少在编程意识中,随时想到了异常情况,有一种基本的编程思想。 比如:一个业务单据的多表插入,关联修改,虚拟删除等都是一些基本的操作,但是又是比较容易引起错.. 阅读全文
posted @ 2013-11-27 15:11 路灯下的诗人 阅读(267) 评论(0) 推荐(0) 编辑
摘要: 浮点数是属于有理数中某特定子集的数的数字表示,在计算机中用以近似表示任意某个实数。具体的说,这个实数由一个整数或定点数(即尾数)乘以某个基数(计算机中通常是2)的整数次幂得到,这种表示方法类似于基数为10的科学记数法。计算机中的浮点数 浮点指的是带有小数的数值,浮点运算即是小数的四则运算,常用来测量电脑运算速度。大部份计算机采用二进制(b=2)的表示方法。位(bit)是衡量浮点数所需存储空间的单位,通常为32位或64位,分别被叫作单精度和双精度。有一些计算机提供更大的浮点数,例如英特尔公司的浮点运算单元Intel8087协处理器(以及其被集成进x86处理器中的后代产品)提供80位长的浮点数,. 阅读全文
posted @ 2013-04-27 16:39 路灯下的诗人 阅读(3340) 评论(0) 推荐(0) 编辑
摘要: 日期控件DateEdit可以供用户选择一个日期值,这非常方便,但是日常使用中会发现,如果要选择一个想要的日期,比如1980年10月1日,这将非常负责,还是勤劳自己的手指,敲击键盘来的实在一些。然而,输入完年1980之后,还要点一下向右的方向键,再次键入月份10,这也非常不可容忍。于是乎,是否可以这样输入呢?直接输入19801001,答案是肯定的,下面就进行设置了。1、首先设置properties中的Mask,将MaskType设置为RegEx(正则表达式)2、在EditMask中输入表达式的内容:(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1. 阅读全文
posted @ 2013-04-25 17:25 路灯下的诗人 阅读(634) 评论(1) 推荐(0) 编辑
摘要: Devexpress中的GridView功能强大,但是各种属性设置也是一箩筐,这里就说一下格式条件(FormatConditions)的设置.主要用到的地方比如:对于满足某一条件的行,将其字体显示为红色.这里的condition可以设置为表达式(Expression),或者采用运算符(Equal)。1、上面图片中为表达式的形式。其中表达式的设置,点开之后有详细的说明,要注意的是写法的区别,比如:[名称]=='宝芝堂' 或者 [名称]!=? ,后者指的是”名称”字段不为空还可以这样写: [营业执照有效期]> AddMonths(Now(), -3)2、运算符的方式:下面图片 阅读全文
posted @ 2013-04-25 16:40 路灯下的诗人 阅读(1999) 评论(0) 推荐(1) 编辑
摘要: 本篇文章讨论可空值类型(Nullable<T>)的转换,却确地说是如何将一种类型的值对象转换成相应的可空值。这来源于今天我们的一个成员遇到的一个小问题,我经过一些整理写了这篇文章。虽然没有什么技术含量可言,也希望对某些读者带来帮助。目录 一、四种典型的值类型转换方式 二、当类型转换遭遇Nullable<T> 三、将基于Nullable<T>的类型转换实现在扩展方法中 四、进一步完善扩展方法ConvertTo 五、谈谈NullableTypeConverter一、四种典型的类型转换方式对于类型转化,或者进一步地,对于像Int、Double、DateTime、S 阅读全文
posted @ 2013-04-24 16:51 路灯下的诗人 阅读(209) 评论(0) 推荐(0) 编辑