Kommentar
Å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 LinqMessageQueryCorrelation visar hur du gör innehållsbaserad korrelation med hjälp av en anpassad MessageQuery implementering i stället för den systembaserade XPathMessageQuery.
Demonstrerar
Anpassad MessageQuery, innehållsbaserad korrelation.
Diskussion
Det här exemplet visar hur du utökar från MessageQuery basklassen för korrelation. Med den anpassade implementeringen LinqMessageQuery, , kan användare ange ett XName för att hitta i meddelandet med hjälp av XLinq. Data som hämtas av frågan används för att bilda korrelationsnyckeln för att skicka meddelanden till lämplig arbetsflödesinstans.
Så här konfigurerar du, skapar och kör 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 skickar en order och tar emot inköpsorder-ID:t och sedan bekräftar ordern. Fönstret Tjänst visar de begäranden som bearbetas.