以下源代码将以纯文本格式从MSMQ队列中读取消息。预期的消息格式是ActiveXMessageFormatter
string endPoint = @"myserver\monitorq"
MessageQueue messageQ = new MessageQueue(endPoint);
messageQ.Formatter = new ActiveXMessageFormatter();
System.Messaging.Message MSMQmsg = messageQ.Receive();
string body = messageQ.Formatter.Read(MSMQmsg).ToString();
如果输入消息格式不同,则以下代码抛出异常
string body = messageQ.Formatter.Read(MSMQmsg).ToString();
异常:无法反序列化作为参数传递的消息。 无法识别序列化格式。
我需要以普通/ ascii文本格式从MSMQ队列中读取消息,而不管输入消息格式类型如何。我的应用程序将在从队列中读取后验证消息。