Csharp/C Sharp by API/System.Messaging/MessageQueueTransaction
new MessageQueueTransaction()
<source lang="csharp"> using System; using System.Messaging; class MainClass {
[STAThread] static void Main(string[] args) { MessageQueue txq1 = new MessageQueue( @".\Private$\txq1" ); MessageQueue txq2 = new MessageQueue( @".\Private$\txq2" ); using ( MessageQueueTransaction mqtx = new MessageQueueTransaction() ) { mqtx.Begin(); Message msgIn = txq1.Receive( mqtx ); msgIn.Formatter = new XmlMessageFormatter( new String[] { "System.String, mscorlib", } ); Message msgOut = new Message(); msgOut.Body = (string)msgIn.Body; txq2.Send( msgOut, mqtx ); System.Console.WriteLine( "Aborting message: {0}", (string)msgIn.Body ); //mqtx.Abort(); mqtx.rumit(); } }
}
</source>