0
MSMQから複数の同じメッセージを受信できるワークフローが必要です。WF4:複数のメッセージを受信するワークフローを設定する方法
例:私は私のワークフローは、複数の更新メッセージを受信することができるようしたいと思い
Receive: CreateWorkflow (CanCreateInstance=True)
Do Something...
Parallel (CompletionCondition=ExitParallel)
Parallel Branch 1
Receive: Update (CanCreateInstance=False, Use correlation)
Process...
Parallel Branch 2
Receive: Finish (CanCreateInstance=False, Use correlation)
Set ExitParallel=True
。しかし、この設定では、受信できるのは1だけです。this MSDN postによると、これはうまくいくはずですが、これはうまく動作しません。
Parallel Branch 1に無限ループwhileループを配置するソリューションはありますか?別の方法がありますか?
受信をループに入れます。ワークフローが以前の「更新」メッセージを処理している間に別の「更新」メッセージが表示される可能性があります。この場合、ワークフローは受信側にありません。メッセージは失われますか?または、ワークフローが受信に戻るまで、メッセージは待機しますか? – Mas
ワークフローサービスにはAllowBufferedReceiveプロパティがあります。このプロパティを使用すると、メッセージが処理される前にキューに入れられ、受信に戻り、2番目の要求を読み取ることができます。 – Maurice