コード例 #1
0
        public MySQLRowsReader ExecuteReader(MySqlConnection connection, MySqlTransaction transaction, string sql, params MySqlParameter[] args)
        {
            var createLocalConnection = false;

            if (connection == null)
            {
                connection  = NewConnection();
                transaction = null;
                connection.Open();
                createLocalConnection = true;
            }
            var result = new MySQLRowsReader();

            using (var cmd = new MySqlCommand(sql, connection))
            {
                if (transaction != null)
                {
                    cmd.Transaction = transaction;
                }
                foreach (var arg in args)
                {
                    cmd.Parameters.Add(arg);
                }
                var dataReader = cmd.ExecuteReader();
                result.Init(dataReader);
                dataReader.Close();
            }
            if (createLocalConnection)
            {
                connection.Close();
            }
            return(result);
        }