Problemet her er anmodning-svar.
Det fungerer sådan her:
- MT sætter anmodnings-id'et til sagatilstandsegenskaben
UrlRequestId
- Anmodningen er sendt
- Du får et svar tilbage, svaret indeholder anmoderens adresse og anmodnings-id'et i dets overskrift
- MT bruger saga-lager til at finde din forekomst ved hjælp af
repo.Find(x => x.UrlRequestId == message.Headers.RequestId)
(derfor er dette ikke den rigtige kode, men det er hvad der sker) - Redis (eller enhver anden KVS) understøtter ikke forespørgsler, så vi understøtter ikke forespørgsler i saga-repositories, og du får en "ikke implementeret" undtagelse
Din korrelationsspecifikation for svar har ingen effekt siden Request
bruger altid overskrifter til at finde en sagaforekomst, som svaret tilhører.
Du kan omgå dette ved ikke at bruge request-response og i stedet udsende en hændelse ved hjælp af context.Publish(new LinkCreatedEvent { ... , CorrelationId = context.Message.CorrelationId })
og ved at bruge den sædvanlige korrelation.