Dela via


Anvisningar: Få åtkomst till en tjänst från ett arbetsflödesprogram

I det här avsnittet beskrivs hur du anropar en arbetsflödestjänst från ett arbetsflödeskonsolprogram. Det beror på slutförandet av avsnittet Så här skapar du en arbetsflödestjänst med meddelandeaktiviteter . Även om det här avsnittet beskriver hur du anropar en arbetsflödestjänst från ett arbetsflödesprogram, kan samma metoder användas för att anropa valfri Windows Communication Foundation-tjänst (WCF) från ett arbetsflödesprogram.

Skapa ett arbetsflödeskonsolprogramprojekt

  1. Starta Visual Studio 2012.

  2. Läs in myWFService-projektet som du skapade i avsnittet Så här skapar du en arbetsflödestjänst med meddelandeaktiviteter .

  3. Högerklicka på MyWFService-lösningen i Solution Explorer och välj Lägg till, Nytt projekt. Välj Arbetsflöde i program för installerade mallar och arbetsflödeskonsoler i listan över projekttyper. Ge projektet namnet MyWFClient och använd standardplatsen enligt följande bild.

    Add New Project Dialog

    Klicka på KNAPPEN OK för att stänga dialogrutan Lägg till nytt projekt.

  4. När projektet har skapats öppnas filen Workflow1.xaml i designern. Klicka på fliken Verktygslåda för att öppna verktygslådan om den inte redan är öppen och klicka på knappnålen för att hålla verktygslådans fönster öppet.

  5. Tryck på Ctrl+F5 för att skapa och starta tjänsten. Precis som tidigare startas ASP.NET Development Server och webbläsaren visar WCF-hjälpsidan. Observera URI:n för den här sidan eftersom du måste använda den i nästa steg.

    Browser displaying WCF help page and URI

  6. Högerklicka på Projektet MyWFClient i Solution Explorer och välj Lägg till>tjänstreferens. Klicka på knappen Identifiera för att söka efter tjänster i den aktuella lösningen. Klicka på triangeln bredvid Service1.xamlx i listan Tjänster. Klicka på triangeln bredvid Service1 för att visa en lista över kontrakt som implementerats av Service1-tjänsten. Expandera noden Service1 i listan Tjänster. Echo-åtgärden visas i listan Åtgärder enligt följande bild.

    Add Service Reference Dialog

    Behåll standardnamnområdet och klicka på OK för att stänga dialogrutan Lägg till tjänstreferens . Följande dialogruta visas.

    Add Service Reference Notification dialog

    Klicka på OK för att stänga dialogrutan. Tryck sedan på CTRL+SKIFT+B för att skapa lösningen. Observera i verktygslådan att ett nytt avsnitt har lagts till med namnet MyWFClient.ServiceReference1.Activities. Expandera det här avsnittet och lägg märke till ekoaktiviteten som har lagts till enligt följande bild.

    Echo activity in the toolbox

  7. Dra och släpp en Sequence aktivitet på designerytan. Den finns under avsnittet Kontrollflöde i verktygslådan.

  8. Sequence När aktiviteten är i fokus klickar du på länken Variabler och lägger till en strängvariabel med namnet inString. Ge variabeln ett standardvärde "Hello, world" för samt en strängvariabel med namnet outString enligt följande diagram.

    Adding an inString variable

  9. Dra och släpp en Echo-aktivitet i Sequence. I egenskapsfönstret binder du inMsg argumentet till variabeln inString och outMsg argumentet till variabeln outString enligt följande bild. Detta skickar värdet för variabeln inString till åtgärden och tar sedan returvärdet och placerar det i variabeln outString .

    Binding the arguments to variables

  10. Dra och släpp en WriteLine-aktivitet under Echo-aktiviteten för att visa strängen som returnerades av tjänstanropet. WriteLine-aktiviteten finns i noden Primitives i verktygslådan. Binda argumentet Text för aktiviteten WriteLine till variabeln outString genom att outString skriva i textrutan i aktiviteten WriteLine. Arbetsflödet bör nu se ut som följande bild.

    The complete client workflow

  11. Högerklicka på MyWFService-lösningen och välj Ange startprojekt. Välj alternativknappen Flera startprojekt och välj Start för varje projekt i kolumnen Åtgärd enligt följande bild.

    Startup projects options

  12. Tryck på Ctrl+F5 för att starta både tjänsten och klienten. ASP.NET Development Server är värd för tjänsten, webbläsaren visar WCF-hjälpsidan och klientarbetsflödesprogrammet startas i ett konsolfönster och visar strängen som returneras från tjänsten ("Hello, world").

Se även