【问题标题】:MSM queue : Replacing message in case of exceptionMSM 队列:在发生异常时替换消息
【发布时间】:2013-12-17 20:40:55
【问题描述】:

我是 MSMQ 的新手,有这个简单的疑问。如果处理代码中发生异常,如何将消息替换为 msmq。我正在将 MSMQ 与 WCF 一起使用并处理此示例:http://www.codeproject.com/Articles/34168/WCF-Queued-Messaging

客户端将消息发送到请求队列,服务器读取它并将响应发送到响应队列。据我所知,当服务器启动并运行时,它将从队列中读取消息并进行处理。在我的情况下,我需要将从请求队列中读取的消息替换回来,以便可以再次处理它。我怎样才能做到这一点?

这是客户端调用的服务器方法(配置为带有 netMsmqBinding 的 wcf 服务):

    public void SendCreditLimitRequest(string id)
    {
        // process id
       // In case of exception "id" should reenter the queue     
    }

【问题讨论】:

    标签: c# wcf msmq


    【解决方案1】:

    您需要在您的消息队列上启用 DTC 并在您的代码上使用事务范围。

    【讨论】: