private void button1_Click(object sender, EventArgs e) { string _connstring = "Data Source=localhost/NEWDB;User Id=EDZEHOO;Password=PASS123;"; try { OracleConnection _connObj = new OracleConnection(_connstring); // Create a new queue object OracleAQQueue _queueObj = new OracleAQQueue("EDZEHOO.MY_JOBS_QUEUE", _connObj); _connObj.Open(); OracleTransaction _txn = _connObj.BeginTransaction(); // Set payload type _queueObj.MessageType = OracleAQMessageType.Raw; // Create an array of OracleAQMessage objects OracleAQMessage[] _msgs = new OracleAQMessage[2]; // Fill the array with strings String[] Data = new String[2]; Data[0] = "HELLO, HOW ARE YOU!"; Data[1] = "... AND WHAT'S YOUR NAME?"; _msgs[0] = new OracleAQMessage(ConvertToByteArray(Data[0])); _msgs[1] = new OracleAQMessage(ConvertToByteArray(Data[1])); // Enqueue the message - take note that we're using the EnqueueArray // function now _queueObj.EnqueueOptions.Visibility = OracleAQVisibilityMode.OnCommit; _queueObj.EnqueueArray(_msgs); // Display the payload data that was enqueued for (int i = 0; i < 2; i++) { MessageBox.Show("Payload Data : " + Data[i] + "\n" + "Payload Hex value : " + ConvertToHexString((byte[])_msgs[i].Payload) + "\n" + "Message ID : " + ConvertToHexString(_msgs[i].MessageId)); } _txn.Commit(); _queueObj.Dispose(); _connObj.Close(); _connObj.Dispose(); _connObj = null; } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }