自己动手写ASP.NET ORM框架(二):AdoHelper支持多数据库操作的封装(2)
;param name="commandText">存储过程名称或者T-SQL命令行<</param> // <param name="commandParameters">执行命令所需的参数数组</param> // <returns>返回通过执行命令所影响的行数</returns> public static int ExecuteNonQuery(IDbTransaction trans, CommandType cmdType, string cmdText, params IDbDataParameter[] commandParameters) { IDbConnection conn = null; if (trans == null) { conn = DbFactory.CreateDbConnection(ConnectionString); } else { conn = trans.Connection; } IDbCommand cmd = DbFactory.CreateDbCommand(); PrepareCommand(cmd, conn, trans, cmdType, cmdText, commandParameters); int val = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); return val; } //============================================================================================= public static int ExecuteNonQuery(IDbTransaction trans, CommandType cmdType, string cmdText) { IDbCommand cmd = DbFactory.CreateDbCommand(); PrepareCommand(cmd, trans.Connection, trans, cmdType, cmdText, null); int val = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); return val; } //============================================================================================= 上面都是对ExecuteNonQuery方法的重载,仅仅是参数有所变化,下面将第一个方法进行逐行的分析。 line 1:public static int ExecuteNonQuery(string connectionString, CommandType cmdType, string cmdText, params IDbDataParameter[] commandParameters) 参数1: string connectionString => 数据库连接所需连接字符串 参数2: CommandType cmdType=> 执行命令的类型(存储过程或T-SQL,等等) 参数3: string cmdText=> 存储过程名称或者T-SQL命令行 参数4: params IDbDataParameter[] commandParameters=>执行命令所需的参数数组 line 2:IDbCommand cmd = DbFactory.CreateDbCommand(); 这里通过DbFactory类创建IDbCommand接口的实现类对象,这里为什么使用IDbCommand接口呢,如果我们项目中使用的SqlServer数据库的时候,我们习惯这样创建: SqlCommand cmd = new SqlCommand(); 下面我们看看DbFactory是如何工作的,代码块1-2: // <summary> 这是DbFactory类 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |