Udostępnij za pośrednictwem


Hostowanie usług przepływu pracy

Usługa przepływu pracy musi być hostowana, aby odpowiadała na przychodzące komunikaty. Usługi przepływu pracy korzystają z infrastruktury obsługi komunikatów WCF i dlatego są hostowane w podobny sposób. Podobnie jak usługi WCF, usługi przepływu pracy mogą być hostowane w dowolnej aplikacji zarządzanej, w obszarze Internet Information Services (IIS) lub w obszarze Windows Process Activation Services (WAS). Ponadto usługi przepływu pracy mogą być hostowane w usłudze Windows Server App Fabric. Aby uzyskać więcej informacji na temat usługi App Fabric systemu Windows Server, zobacz Dokumentację usługi App Fabric systemu Windows Server, funkcje hostingu AppFabric i Pojęcia dotyczące hostingu AppFabric. Aby uzyskać więcej informacji na temat różnych sposobów hostowania usług WCF, zobacz Hosting Services (Usługi hostingu).

Hosting w aplikacji zarządzanej

Aby hostować usługę przepływu pracy w aplikacji zarządzanej, użyj WorkflowServiceHost klasy . Konstruktor WorkflowServiceHost umożliwia określenie pojedynczego wystąpienia usługi przepływu pracy, definicji usługi przepływu pracy lub działania korzystającego z działań obsługi komunikatów przepływu pracy. Wywołanie Open powoduje, że usługa zacznie nasłuchiwać przychodzących komunikatów.

Hosting w usługach IIS lub WAS

Hostowanie usługi przepływu pracy w usługach IIS lub WAS polega na utworzeniu katalogu wirtualnego i umieszczeniu plików w katalogu wirtualnym, który definiuje usługę i jej zachowanie. W przypadku hostowania usługi przepływu pracy w usługach IIS lub WAS istnieje kilka możliwości:

  • Umieść plik xamlx definiujący usługę przepływu pracy w katalogu wirtualnym IIS/WAS wraz z plikiem Web.config określającym zachowania usługi, punkty końcowe i inne elementy konfiguracji.

  • Umieść plik xamlx, który definiuje usługę przepływu pracy w katalogu wirtualnym IIS/WAS. Plik xamlx określa punkty końcowe do uwidocznienia. Punkty końcowe są określane w elemecie WorkflowService.Endpoints , jak pokazano w poniższym przykładzie.

    <WorkflowService xmlns="http://schemas.microsoft.com/netfx/2009/xaml/servicemodel"  xmlns:p1="http://schemas.microsoft.com/netfx/2009/xaml/activities" xmlns:sad="clr-namespace:System.Activities.Debugger;assembly=System.Activities" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
      <WorkflowService.Endpoints>
        <Endpoint ServiceContractName="IWorkFlowEchoService" AddressUri="">
          <Endpoint.Binding>
            <BasicHttpBinding />
          </Endpoint.Binding>
        </Endpoint>
      </WorkflowService.Endpoints>
    <!-- ... -->
    </WorkflowService>
    

    Uwaga

    Nie można określić zachowań w pliku xamlx, dlatego należy użyć pliku Web.config, jeśli trzeba określić ustawienia zachowania.

  • Umieść plik xamlx, który definiuje usługę przepływu pracy w katalogu wirtualnym IIS/WAS. Ponadto umieść plik svc w katalogu wirtualnym. Plik .svc umożliwia określenie niestandardowej fabryki hostów usługi sieci Web, zastosowanie zachowania niestandardowego lub załadowanie konfiguracji z lokalizacji niestandardowej.

  • Umieść zestaw w katalogu wirtualnym IIS/WAS, który zawiera działanie korzystające z działań obsługi komunikatów WCF.

Plik xamlx definiujący usługę przepływu pracy musi zawierać <Service> element główny lub element główny zawierający dowolny typ pochodzący z Activity. W przypadku korzystania z szablonu działania programu Visual Studio tworzony jest plik xamlx. W przypadku korzystania z szablonu usługi przepływu pracy programu WCF tworzony jest plik xamlx.

Hostowanie usług przepływu pracy w usłudze Windows Server App Fabric

Hostowanie usługi przepływu pracy w usłudze Windows Server App Fabric odbywa się w taki sam sposób, jak hostowanie w usługach IIS/WAS. Jedyną różnicą jest fakt, że jest zainstalowana usługa Windows Server App Fabric. Usługa App Fabric systemu Windows Server udostępnia narzędzia dodawane do Menedżera usług informacyjnych w Internecie, a także polecenia cmdlet programu PowerShell. Te narzędzia upraszczają wdrażanie i śledzenie usług przepływu pracy oraz usług WCF oraz zarządzanie nimi.

Odwoływanie się do działań niestandardowych

Odwołania do działań niestandardowych należy dodać do <Assemblies> sekcji w sekcji <System.Web.Compilation> , aby zostały załadowane do domeny aplikacji, a deserializator XAML może zlokalizować typy. Te ustawienia można ustawić na poziomie aplikacji lub w głównej konfiguracji Web.config, jeśli ustawienia powinny być stosowane do wszystkich aplikacji na maszynie.

Wdrożenie

Narzędzie wdrażania sieci Web zostało utworzone, aby ułatwić wdrażanie. Narzędzie umożliwia migrowanie aplikacji między usługami IIS 6.0 i IIS 7.0, synchronizowanie farm serwerów oraz pakowanie, archiwizowanie i wdrażanie aplikacji internetowych. Aby uzyskać więcej informacji, zobacz Narzędzie do wdrażania ms.

Zobacz też