MSMQ 消息已收到并正在消失

MSMQ Message Received and being disappearing

在我的情况下,在 Win2008R2 上,MSMQ 在 IIS 2.0(集成模式)中成功接收到来自已配置网站的消息,但是在 1-2 分钟内,所有消息都从 MSMQ 中消失了,这还不清楚为什么?

我还尝试使用 visual studio 调试相同的进程,并且通过 VS Web 服务器在 MSMQ 中创建的消息仍然存在于 Windows 8.1 系统上,这没问题。

所以在我们的案例中,只有从网站 (IIS 2.0) 收到的消息有问题,并且这些消息正在消失。

问题已通过使用以下代码解决:

无需更改 IIS 设置,这是代码问题。

// 查看并格式化消息。

        msgQueue.Formatter = new BinaryMessageFormatter();

        Message myMessage = msgQueue.Peek(new TimeSpan(0, 0, 3));

        MailMessage mailMessage = (myMessage.Body as SerializeableMailMessage).GetMailMessage();

        if (SendMail(mailMessage))
        {
            msgQueue.Receive();
        }