刚刚写了一段代码,是订单提交的代码,要用到事物处理,不知对不对,还没来的及调试,先贴上来,让大家看看://-----------------------------开始public void InsertOrderItem(int rows, object[][] arrOrderItem)
    {
        int opCount = 0;    //定义操作成功的次数
        SqlConnection conn = db.dbConn();
        conn.Open();        //打开DB连接        SqlTransaction trans = conn.BeginTransaction();     //创建事物                for (int i = 0; i <= rows - 1; i++)   //给参数赋值.(rows 是原数据表中要插入的行数)
        {
            SqlCommand cmd = new SqlCommand("usp_OrderInsert",conn); //存储过程
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@orderNum", arrOrderItem[i][0]); 
            cmd.Parameters.AddWithValue("@bookID", arrOrderItem[i][1]);
            cmd.Parameters.AddWithValue("@bookQuan", arrOrderItem[i][2]);
            cmd.Parameters.AddWithValue("@totalPrice", arrOrderItem[i][3]);            try
            {
                cmd.ExecuteNonQuery();
                opCount++;
            }
            catch (SqlException ex)
            {
                throw ex;
            }
        }        if (opCount == rows)    //如果都成功操作,则提交
        {
            trans.Commit();
        }
        else                    //回滚
        {
            trans.Rollback();
        }        conn.Close();   //关闭数据连接    }//-----------------------------结束