- 博客(7)
- 收藏
- 关注
原创 以SqlHelper为例论面向对象中封装的使用(续)
上文以SqlHelper为例说明了面向对象中封装的好处,但是上文只是简单封装,考虑下面代码的情况: public static Activate GetByCode(string code){ List paraList = new List(); paraList.Add(new SqlParameter("@activateCode", code)); using (SqlDat
2014-03-31 15:36:22 581
原创 以SqlHelper为例论面向对象中封装的使用
在使用面向对象方法编写的程序中,会有一些工具类,如Utility,xxHelper等。比如1)操作数据库的过程,一般步骤都是:1.准备数据库地址、表名等信息;2.建立连接;3.准备要执行sql语句或存储过程;4.设置执行参数;5.执行sql语句;6.读取执行结果;7.处理异常、关闭连接、释放资源。再比如2)联网获取/发送数据的过程,一般步骤都是:1.准备Url,设置连接方式及参
2014-03-31 14:09:31 700
原创 ASP.NET中各种缓存技术的特点及使用场景
对于一些不经常改变却经常被request的数据,我们喜欢将它们缓存在内存。这样用户请求时先到缓存中去取,如果缓存中没有,再去数据库拿,提高响应速度。缓存一般实现在BLL,这样可以与DAL分离,更换数据库源时也无需改变缓存逻辑。ASP.NET中常用的缓存技术有以下几种:1. A per request cache using HttpContext.Items 2.A ses
2014-03-28 17:01:45 2019
原创 主键和聚集索引,单列索引和多列索引
1. 主键与聚集索引首先澄清一个概念,主键并不等于聚集索引。(这不是废话么,如果是同一个东西,微软也不会叫两个不同的名字了)一个表只能有一个聚集索引,数据在物理上是按照聚集索引的顺序来存放的。主键分为聚集的主键和非聚集的主键。默认是聚集的主键。如下图:/****** Object: Table [dbo].[User] Script Date: 03/28/2014
2014-03-28 15:33:16 2521
原创 为什么使用抽象类?
抽象类从代码的样子上来看像是类和接口的中间过渡产品。它既可以包含实现了的方法,也可以包含没有实现的方法。所有的文档都说它不能被实例化。可是我们有没有想过它为什么不能被实例化?我的答案是,假设它可以被实例化,那么它未被实现的方法怎么使用?下面说下这篇文章的主题,为什么使用抽象类?当你想使用具有接口特性(不需要实现方法体)的普通类作为基类时。简单地说,就是你想设计一
2014-03-25 19:08:05 1952
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人