asp.net SqlHelper数据访问层的使用
更新时间:2008年09月09日 23:34:00 作者:
如果不使用数据访问层,那么你的代码里会出现很多SqlConnection、SqlCommand、SqlDataReader、Open、 Close……这些类和方法,而且代码量很大,让你不胜其烦,而且代码写起来,其实都是体力活,没有技术含量。
本文章主要介绍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[]的使用方法,让高手见笑了
相关文章
asp.net下String.prototype.split()的兼容问题
IE下的String.prototype.split()函数bug2012-12-12ASP.NET Core 2.2中的Endpoint路由详解
这篇文章主要介绍了ASP.NET Core 2.2中的Endpoint路由详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2019-03-03asp.net 实现动态显示当前时间(不用javascript不考虑开销)
asp.net实现动态显示时间,无需用到javascrip,而是用了AJAX。2009-11-11
最新评论