Problemet här är begäran-svar.
Det fungerar så här:
- MT lägger begäran-id:t till sagatillståndsegenskapen
UrlRequestId
- Förfrågan har skickats
- Du får ett svar tillbaka, svaret innehåller förfrågans adress och förfrågnings-id i dess rubrik
- MT använder sagaförråd för att hitta din instans med
repo.Find(x => x.UrlRequestId == message.Headers.RequestId)
(därför är detta inte den riktiga koden men det här är vad som händer) - Redis (eller någon annan KVS) stöder inte frågor så vi stöder inte frågor i sagaförråd också och du får undantaget "inte implementerat"
Din korrelationsspecifikation för svar har ingen effekt sedan Request
använder alltid rubriker för att hitta en sagainstans som svaret tillhör.
Du kan lösa detta genom att inte använda begäran-svar och istället skicka ut en händelse med context.Publish(new LinkCreatedEvent { ... , CorrelationId = context.Message.CorrelationId })
och med den vanliga korrelationen.