是否可以从一个队列执行接收,并在同一个事务中发送给另一个队列? e.g:
using (var tx = new TransactionScope())
{
var inMsg = recv.Receive();
var val = msg.GetBody<int>();
var outMsg = new BrokeredMessage(val + 1);
sender.Send(outMsg);
inMsg.Complete();
tx.Complete();
}
以上似乎给了我一个例外,暗示这是不可能的:
“交易可能已经超时或试图跨越多个顶级实体,例如队列或主题。”
但这肯定是一个非常普遍的要求?有办法解决这个问题吗?
(这是使用Service Server for Windows Server,如果这有所不同)
答案 0 :(得分:0)