Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Exemplet AccessingOperationContext visar hur meddelandeaktiviteterna (Receive och Send) kan användas med en anpassad omfångsaktivitet för att komma åt Current och bifoga eller hämta ett anpassat meddelandehuvud i ett utgående eller inkommande meddelande.
Demonstrerar
Meddelandeaktiviteter, ISendMessageCallback, IReceiveMessageCallback.
Diskussion
Det här exemplet visar hur du använder utökningspunkter (ISendMessageCallback) IReceiveMessageCallback) i meddelandeaktiviteterna för att få åtkomst Currenttill . Återanropen registreras inom arbetsflödeskörningen som en implementering av IExecutionProperty, vilken plockas upp av meddelandeaktiviteterna vid körning. Alla meddelandeaktiviteter i samma omfång som implementeringen IExecutionProperty påverkas. I det här exemplet används särskilt en anpassad omfångsaktivitet för att framtvinga återanropsbeteendet. ISendMessageCallback Används i klientarbetsflödet för att inkludera arbetsflödets Id som utgående MessageHeader. Det här headern hämtas sedan i tjänsten med hjälp av IReceiveMessageCallback och värdet för headern skrivs ut på konsolen.
Konfigurera, skapa och köra exemplet
Det här exemplet exponerar en arbetsflödestjänst med hjälp av HTTP-slutpunkter. Om du vill köra det här exemplet måste lämpliga URL-ACL:er läggas till (se Konfigurera HTTP och HTTPS för mer information), antingen genom att köra Visual Studio som administratör eller genom att köra följande kommando i en upphöjd prompt för att lägga till lämpliga ACL:er. Se till att din domän och ditt användarnamn ersätts.
netsh http add urlacl url=http://+:8000/ user=%DOMAIN%\%UserName%När URL-ACL:erna har lagts till använder du följande steg.
Skapa lösningen.
Ange flera startprojekt genom att högerklicka på lösningen och välja Ange startprojekt.
Lägg till tjänst och klient (i den ordningen) som flera startprojekt.
Kör programmet. Klientkonsolen visar ett arbetsflöde som körs två gånger och fönstret Tjänst visar instans-ID för dessa arbetsflöden.