Example #1
0
        /// <summary>
        /// 根据存储过程名称与实体对象执行数据库操作命令
        /// </summary>
        /// <param name="storedProcedureName">存储过程名称</param>
        /// <param name="entity">实体对象</param>
        public void ExecuteProcedure(string procedureName, object entity)
        {
            IDbCommand command = this.driver.CreateProcedureCommand(procedureName);

            // 从实体对象中取参数值赋给数据库操作命令参数
            SqlUtil.AssignParameters(command.Parameters, entity);

            this.ExecuteNonQuery(command);

            // 从数据库操作命令参数取返回值赋给实体对象
            SqlUtil.AssignProperties(entity, command.Parameters);
        }