示例#1
0
        public static void ExecuteTransaction(SqlCommand[] CMD)
        {
            SqlConnection _Scon = GetConnection();

            if (CMD.Length > 0)
            {
                _Scon.Open();
                SqlTransaction Xtran = _Scon.BeginTransaction();
                try
                {
                    foreach (SqlCommand CM in CMD)
                    {
                        CM.Connection  = _Scon;
                        CM.Transaction = Xtran;
                        CM.ExecuteNonQuery();
                    }
                    Xtran.Commit();
                }
                catch (Exception ex)
                {
                    Xtran.Rollback();
                    throw ex;
                }
                finally
                {
                    if (_Scon.State == ConnectionState.Open)
                    {
                        _Scon.Close();
                    }
                }
            }
        }