asp.net SqlHelper数据访问层的使用
程序员文章站
2022-05-15 08:09:57
本文章主要介绍SqlHelper使用。 每个项目都要用到数据访问层,我做的也不例外,但是我把数据访问层做成独立项目,没有什么太大的目的,数据访问层,仅仅做数据访问用,不包含...
本文章主要介绍SqlHelper使用。
每个项目都要用到数据访问层,我做的也不例外,但是我把数据访问层做成独立项目,没有什么太大的目的,数据访问层,仅仅做数据访问用,不包含任何逻辑。
为什么要使用数据访问层?
如果不使用数据访问层,那么你的代码里会出现很多SqlConnection、SqlCommand、SqlDataReader、Open、 Close……这些类和方法,而且代码量很大,让你不胜其烦,而且代码写起来,其实都是体力活,没有技术含量。因此我们要把数据访问层封装起来,方便重用。微软已经替我们做好了这个工作,那就是SqlHelper,下图是SqlHelper的类关系图:
下面介绍我的使用方法。
执行一个无返回值的存储过程:
create proc p_Delete@id int
as
delete table1 where id=@id
这是一个删除数据的存储过程,调用该存储过程只需要一句话:SqlHelper.ExecuteNonQuery (SqlHelper.conn, "p_Delete", id);,这里的id是int类型,而不是SqlParameter类型。该调用是调用的public static int ExecuteNonQuery(string connectionString, string spName, params object[] parameterValues)方法。以此类推。返回一个DataSet类型:SqlHelper.ExecuteDataset (SqlHelper.conn, pro, 参数列表);参数也是直接传递,无需构造SqlParameter……好了,本文主要是介绍一个小技巧,就是params object[]的使用方法,让高手见笑了
每个项目都要用到数据访问层,我做的也不例外,但是我把数据访问层做成独立项目,没有什么太大的目的,数据访问层,仅仅做数据访问用,不包含任何逻辑。
为什么要使用数据访问层?
如果不使用数据访问层,那么你的代码里会出现很多SqlConnection、SqlCommand、SqlDataReader、Open、 Close……这些类和方法,而且代码量很大,让你不胜其烦,而且代码写起来,其实都是体力活,没有技术含量。因此我们要把数据访问层封装起来,方便重用。微软已经替我们做好了这个工作,那就是SqlHelper,下图是SqlHelper的类关系图:
下面介绍我的使用方法。
执行一个无返回值的存储过程:
create proc p_Delete@id int
as
delete table1 where id=@id
这是一个删除数据的存储过程,调用该存储过程只需要一句话:SqlHelper.ExecuteNonQuery (SqlHelper.conn, "p_Delete", id);,这里的id是int类型,而不是SqlParameter类型。该调用是调用的public static int ExecuteNonQuery(string connectionString, string spName, params object[] parameterValues)方法。以此类推。返回一个DataSet类型:SqlHelper.ExecuteDataset (SqlHelper.conn, pro, 参数列表);参数也是直接传递,无需构造SqlParameter……好了,本文主要是介绍一个小技巧,就是params object[]的使用方法,让高手见笑了
推荐阅读
-
在WCF数据访问中使用缓存提高Winform字段中文显示速度的方法
-
ASP.NET对SQLServer的通用数据库访问类
-
在ASP.NET 2.0中操作数据之一:创建一个数据访问层
-
ASP.NET 2.0中的数据操作之八:使用两个DropDownList过滤的主/从报表
-
ASP.NET 2.0中的数据操作之七:使用DropDownList过滤的主/从报表
-
在ASP.NET 2.0中操作数据之十:使用 GridView和DetailView实现的主/从报表
-
在ASP.NET 2.0中操作数据之十四:使用FormView 的模板
-
在ASP.NET 2.0中操作数据之十八:在ASP.NET页面中处理BLL/DAL层的异常
-
ASP.NET对SQLServer的通用数据库访问类
-
ASP.NET对SQLServer的通用数据库访问类