| asp.net(C#)下应用MSMQ收发消息
protected void Button1_Click(object sender, EventArgs e) { MessageQueue msq; if (MessageQueue.Exists(@".\Private$\tests")) { msq = new MessageQueue(@".\Private$\tests"); } else { msq =MessageQueue.Create(@".\Private$\tests"); } BinaryWriter bw = new BinaryWriter(new MemoryStream()); bw.Write(TextBox1.Text); Message msg = new Message(); msg.BodyStream = bw.BaseStream; msg.Label = "Send Messages"; msq.Send(msg); Label1.Text = "发送消息!"; } protected void Button2_Click(object sender, EventArgs e) { MessageQueue msq; Message msg = new Message(); BinaryReader br; string msgs; if (MessageQueue.Exists(@".\private$\tests")) { msq = new MessageQueue(@".\private$\tests"); //说明网上很多版本写作msq = new MessageQueue(".\\private$\tests"),运行时将出现错误。 } else { msq = MessageQueue.Create(@".\private$\tests"); } try { msg = msq.Receive(new TimeSpan(0, 0, 3)); br = new BinaryReader(msg.BodyStream); msgs = new string(br.ReadChars(Convert.ToInt32(msg.BodyStream.Length))); } catch { msgs = "没有消息!"; } Label1.Text = msgs; }
|