Workflow Foundation 4 - DeclarativeServiceLibrary - Errore durante la chiamata secondo ReceiveAndSendReply Sequence - VS2010

StackOverflow https://stackoverflow.com/questions/2437457

Domanda

Ho creato un DeclarativeServiceLibrary utilizzando VS2010 beta 2,
Si prega di verificare questa immagine di Sequential Servizio
alt text

In seguito è il codice utilizzato per chiamare queste due attività `int? Dati = 123;

        ServiceReference1.ServiceClient client1 = new ServiceReference1.ServiceClient();
        string result1 = client1.GetData(data);

        //This line shows error :(
        string result2 = client1.Operation1();

        Response.Write(result1 + " ::  ::" + result2);`  

client1.GetData funziona perfettamente, ma client1.Operation1 mostrare il seguente errore. Per favore fatemi sapere come risolvere questo problema.

  

Non c'è contesto allegato al messaggio in arrivo per il servizio e l'operazione corrente non è contrassegnato con "CanCreateInstance = true". Per comunicare con questo controllo di servizio se l'associazione in entrata supporta il protocollo contesto e ha un contesto valida inizializzato.

È stato utile?

Soluzione

È necessario attivare una qualche forma di correlazione per ottenere il secondo messaggio nella stessa istanza del servizio del flusso di lavoro. Ci sono un paio di modi per farlo, sia correlazione contesto utilizzando uno dei binding di correlazione, come wsHttpContextBinding, della richiesta correlazione dove si fa lo stesso sulla base di alcuni dati comuni nei tuoi messaggi. L'ultimo è il più flessibile, ma significa che è necessario alcuni dati unici, come un numero d'ordine, da inviare insieme con ogni richiesta.

Qui è un post sul blog che descrive come utilizzare la correlazione messaggio.

Nell'interfaccia utente usa la CorrelationInitializer per impostare correlazione con la prima ricezione attività e utilizzando CorrelatesOn con l'attività secondo ricezione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top