MSMQ消息队列

1本机创建队列

2

public ActionResult About()
{

for (int i = 1; i < 6; i++)
{
//发送字符串消息
System.Messaging.Message msg = new System.Messaging.Message();
//内容
msg.Body = "Hello World-" + i;
//指定格式化程序
msg.Formatter = new XmlMessageFormatter(new Type[] { typeof(string) });
System.Messaging.MessageQueue myQuere = new System.Messaging.MessageQueue(@"FormatName:Direct=TCP:192.168.158.149\private$\myqueue");
myQuere.Send(msg);
}
return View();
}

3

public ActionResult Contact()
{
System.Messaging.MessageQueue queue = new System.Messaging.MessageQueue(@"FormatName:Direct=TCP:192.168.158.149\private$\myqueue");
int num = queue.GetAllMessages().Length;//获取消息队列的消息的数量
string result = "";
if (num > 0)
{
for (int i = 0; i < num; i++)
{

//接收到的消息对象
System.Messaging.Message msg2 = queue.Receive();
//指定格式化程序
msg2.Formatter = new XmlMessageFormatter(new Type[] { typeof(string) });
// 接收到的内容
string str = msg2.Body.ToString();
Console.WriteLine(str + "----去掉消息");
result += str;
}
}
ViewBag.Message = "获得消息队列:" + result;
return View();
}

posted @ 2020-10-16 17:46  小雨小雨zzj  阅读(58)  评论(0)    收藏  举报