Hosten von WorkflowdienstenHosting Workflow Services

Ein Workflowdienst muss gehostet werden, damit er auf eingehende Meldungen reagieren kann.A workflow service must be hosted for it to respond to incoming messages. Workflowdienste verwenden die WCF-Messaginginfrastruktur und werden daher auf ähnliche Weise gehostet.Workflow services use the WCF messaging infrastructure and are therefore hosted in similar ways. Workflowdienste können in jeder verwalteten Anwendung, unter Internet Information Services (IIS) oder unter Windows Process Activation Services (WAS) gehostet werden, wie WCF-Dienste.Like WCF services, workflow services can be hosted in any managed application, under Internet Information Services (IIS), or under Windows Process Activation Services (WAS). Außerdem können Workflowdienste unter Windows Server AppFabric gehostet werden.In addition workflow services can be hosted under Windows Server App Fabric. Weitere Informationen zu Windows Server AppFabric finden Sie unter Dokumentation zu Windows Server AppFabric, AppFabric-Hostingfunktionen, und AppFabric-Hostingkonzepte.For more information about Windows Server App Fabric see Windows Server App Fabric documentation, AppFabric Hosting Features, and AppFabric Hosting Concepts. Weitere Informationen über die verschiedenen Methoden zum Hosten Sie WCF finden Sie unter Services Hostingdienste.For more information about the various ways to host WCF services see Hosting Services.

Hosten in einer verwalteten AnwendungHosting in a managed application

Verwenden Sie die WorkflowServiceHost-Klasse, um einen Workflowdienst in einer verwalteten Anwendung zu hosten.To host a workflow service in a managed application, use the WorkflowServiceHost class. Mit dem WorkflowServiceHost-Konstruktor können Sie eine Singleton-Workflowdienstinstanz, eine Workflowdienstdefinition oder eine Aktivität angeben, die die Workflowmessagingaktivitäten verwendet.The WorkflowServiceHost constructor allows you to specify a singleton workflow service instance, a workflow service definition, or an activity that uses the workflow messaging activities. Aufrufen von < System.ServiceModel.Activities.WorkflowServiceHost.Open> bewirkt, dass den Dienst mit dem eingehende Nachrichten überwachen.Calling < System.ServiceModel.Activities.WorkflowServiceHost.Open> causes the service to start listening for incoming messages.

Hosten unter IIS oder WASHosting under IIS or WAS

Das Hosten eines Workflowdiensts unter IIS oder WAS umfasst das Erstellen eines virtuellen Verzeichnisses und das Einfügen von Dateien in das virtuelle Verzeichnis, die den Dienst und sein Verhalten definieren.Hosting a workflow service under IIS or WAS involves creating a virtual directory and placing files in the virtual directory that define the service and its behavior. Beim Hosten eines Workflowdiensts unter IIS oder WAS gibt es mehrere Möglichkeiten:When hosting a workflow service under IIS or WAS there are several possibilities:

  • Fügen Sie eine XAMLX-Datei, die den Workflowdienst definiert, zusammen mit einer Web.config-Datei, die das Dienstverhalten, Endpunkte und andere Konfigurationselemente angibt, in ein virtuelles IIS/WAS-Verzeichnis ein.Place a .xamlx file that defines the workflow service in an IIS/WAS virtual directory along with a Web.config file that specifies the service behaviors, endpoints, and other configuration elements.

  • Fügen Sie eine XAMLX-Datei, die den Workflowdienst definiert, in ein virtuelles IIS/WAS-Verzeichnis ein.Place a .xamlx file that defines the workflow service in an IIS/WAS virtual directory. Die XAMLX-Datei gibt die Endpunkte an, die verfügbar gemacht werden.The .xamlx file specifies the endpoints to expose. Endpunkte werden in einem WorkflowService.Endpoints-Element angegeben, wie im folgenden Beispiel gezeigt.Endpoints are specified in a WorkflowService.Endpoints element as shown in the following example.

    <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>  
    

    Hinweis

    Verhalten können nicht in einer XAMLX-Datei angegeben werden. Aus diesem Grund benötigen Sie eine Web.config-Datei, falls Sie Verhaltenseinstellungen angeben müssen.Behaviors cannot be specified in a .xamlx file, so you must use a Web.config if you need to specify behavior settings.

  • Fügen Sie eine XAMLX-Datei, die den Workflowdienst definiert, in ein virtuelles IIS/WAS-Verzeichnis ein.Place a .xamlx file that defines the workflow service in an IIS/WAS virtual directory. Fügen Sie zusätzlich eine SVC-Datei in das virtuelle Verzeichnis ein.In addition, place a .svc file in the virtual directory. Mithilfe der SVC-Datei können Sie eine benutzerdefinierte Webdienst-Hostfactory angeben, benutzerdefiniertes Verhalten anwenden oder eine Konfiguration von einem benutzerdefinierten Speicherort laden.The .svc file allows you to specify a custom Web service host factory, apply custom behavior, or load configuration from a custom location.

  • Fügen Sie eine Assembly in das virtuelle IIS/WAS-Verzeichnis ein, in dem eine Aktivität enthalten ist, die die WCF-Messagingaktivitäten verwendet.Place an assembly in the IIS/WAS virtual directory that contains an activity that uses the WCF messaging activities.

Eine xamlx-Datei, die einen Workflowdienst definiert, darf ein <Service>-Stammelements oder ein Stammelement, das jeden von abgeleiteten Typ enthält Activity.A .xamlx file that defines a workflow service must contain a <Service> root element or a root element that contains any type derived from Activity. Beim Verwenden der Visual Studio 2012Visual Studio 2012-Aktivitätsvorlage wird eine XAMLX-Datei erstellt.When using the Visual Studio 2012Visual Studio 2012 Activity template a .xamlx file is created. Beim Verwenden der Vorlage "WCF-Workflowdienst" wird eine XAMLX-Datei erstellt.When using the WCF Workflow Service template a .xamlx file is created.

Hosten eines Workflowdiensts unter Windows Server AppFabricHosting Workflow Services under Windows Server App Fabric

Das Hosten eines Workflowdiensts unter Windows Server App Fabric erfolgt auf dieselbe Weise wie das Hosten unter IIS/WAS.Hosting a workflow service under Windows Server App Fabric is done in the same way as hosting under IIS/WAS. Der einzige Unterschied besteht darin, dass Windows Server App Fabric installiert wird.The only difference is the fact that Windows Server App Fabric is installed. Windows Server App Fabric stellt Tools bereit, die dem Internetinformationsdienste-Manager sowie PowerShell-Commandlets hinzugefügt werden.Windows Server App Fabric provides tools that are added to Internet Information Services Manager, as well as powershell commandlets. Diese Tools vereinfachen das Bereitstellen, Verwalten und Nachverfolgen von Workflowdiensten und WCF-Diensten.These tools simplify deploying, managing, and tracking of workflow services and WCF services. sein.. Weitere Informationen zu Windows Server AppFabric finden Sie unter Windows Server AppFabricFor more information about Windows Server App Fabric see Windows Server App Fabric

Verweisen auf benutzerdefinierte AktivitätenReferencing Custom Activities

Verweise auf benutzerdefinierte Aktivitäten müssen hinzugefügt werden, um die <Assemblies> Handlerbereich unter dem <System.Web.Compilation>, damit sie in die Anwendungsdomäne geladen werden und die Verwendung von XAML-Deserialisierer wird nach Typen suchen können.References to custom activities must be added to the <Assemblies> section under <System.Web.Compilation> so that they are loaded into the Application Domain and the XAML deserializer is able to locate the types. Diese Einstellungen können auf Anwendungsebene oder in der Web.config-Stammdatei vorgenommen werden, falls die Einstellungen für alle Anwendungen auf dem Computer übernommen werden sollen.These settings can be made at the application level or in the root Web.config if the settings should be applied to all applications on the machine.

BereitstellungDeployment

Das Webbereitstellungstool wurde erstellt, um die Bereitstellung zu vereinfachen.The Web Deployment tool has been created to make the job of deployment easier. Mit dem Tool können Sie Anwendungen zwischen IIS 6.0 und IIS 7.0 migrieren, Serverfarmen synchronisieren und Webanwendungen verpacken, archivieren und bereitstellen.The tool allows you to migrate applications between IIS 6.0 and IIS 7.0, synchronize server farms, and package, archive and deploy Web applications. Weitere Informationen finden Sie unter MS-BereitstellungstoolFor more information, see MS Deployment Tool

Siehe auchSee Also

Interne Funktionsweise des WorkflowdiensthostsWorkflow Service Host Internals
Konfigurieren von WorkflowServiceHostConfiguring WorkflowServiceHost