Hosting di servizi flusso di lavoroHosting Workflow Services

Per poter rispondere ai messaggi in arrivo, un servizio flusso di lavoro deve essere ospitato.A workflow service must be hosted for it to respond to incoming messages. I servizi flusso di lavoro utilizzano l'infrastruttura di messaggistica WCF e sono quindi ospitati in modi analoghi.Workflow services use the WCF messaging infrastructure and are therefore hosted in similar ways. Ad esempio i servizi WCF, servizi di flusso di lavoro possono essere ospitati in qualsiasi applicazione gestita, in Internet Information Services (IIS) o nel processo Windows Activation Services (WAS).Like WCF services, workflow services can be hosted in any managed application, under Internet Information Services (IIS), or under Windows Process Activation Services (WAS). I servizi flusso di lavoro possono inoltre essere ospitati in Windows Server AppFabric.In addition workflow services can be hosted under Windows Server App Fabric. Per ulteriori informazioni su Windows Server AppFabric, vedere documentazione di Windows Server AppFabric, funzionalità di Hosting di AppFabric, e concetti di Hosting di AppFabric.For more information about Windows Server App Fabric see Windows Server App Fabric documentation, AppFabric Hosting Features, and AppFabric Hosting Concepts. Per ulteriori informazioni sui diversi modi per ospitare WCF servizi vedere servizi di Hosting.For more information about the various ways to host WCF services see Hosting Services.

Hosting in un'applicazione gestitaHosting in a managed application

Per ospitare un servizio flusso di lavoro in un'applicazione gestita, utilizzare la classe WorkflowServiceHost.To host a workflow service in a managed application, use the WorkflowServiceHost class. Il costruttore WorkflowServiceHost consente di specificare un'istanza di servizio flusso di lavoro singleton, una definizione del servizio flusso di lavoro o un'attività che utilizza le attività di messaggistica del flusso di lavoro.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. La chiamata a < System.ServiceModel.Activities.WorkflowServiceHost.Open>, il servizio avvia l'ascolto dei messaggi in arrivo.Calling < System.ServiceModel.Activities.WorkflowServiceHost.Open> causes the service to start listening for incoming messages.

Hosting in IIS o WASHosting under IIS or WAS

L'hosting di un servizio flusso di lavoro in IIS o WAS prevede la creazione di una directory virtuale e il posizionamento dei file nella directory virtuale che definiscono il servizio e il relativo comportamento.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. Quando si ospita un servizio flusso di lavoro in IIS o WAS esistono diverse possibilità:When hosting a workflow service under IIS or WAS there are several possibilities:

  • Posizionare un file con estensione xamlx che definisce il servizio flusso di lavoro in una directory virtuale IIS/WAS insieme a un file Web.config che specifica i comportamenti del servizio, gli endpoint e altri elementi di configurazione.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.

  • Posizionare un file con estensione xamlx che definisce il servizio flusso di lavoro in una directory virtuale IIS/WAS.Place a .xamlx file that defines the workflow service in an IIS/WAS virtual directory. Il file con estensione xamlx specifica gli endpoint da esporre.The .xamlx file specifies the endpoints to expose. Gli endpoint sono specificati in un elemento WorkflowService.Endpoints, come indicato nell'esempio seguente.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>  
    

    Nota

    Non è possibile specificare i comportamenti in un file con estensione xamlx, pertanto è richiesto un file Web.config se è necessario specificare impostazioni relative al comportamento.Behaviors cannot be specified in a .xamlx file, so you must use a Web.config if you need to specify behavior settings.

  • Posizionare un file con estensione xamlx che definisce il servizio flusso di lavoro in una directory virtuale IIS/WAS.Place a .xamlx file that defines the workflow service in an IIS/WAS virtual directory. Posizionare inoltre un file con estensione svc nella directory virtuale.In addition, place a .svc file in the virtual directory. Il file con estensione svc consente di specificare una factory di host di servizio Web personalizzata, applicare il comportamento personalizzato o caricare la configurazione da un percorso personalizzato.The .svc file allows you to specify a custom Web service host factory, apply custom behavior, or load configuration from a custom location.

  • Posizionare un assembly nella directory virtuale IIS/WAS che contiene un'attività che utilizza le attività di messaggistica di WCF.Place an assembly in the IIS/WAS virtual directory that contains an activity that uses the WCF messaging activities.

Un file con estensione xamlx che definisce un servizio flusso di lavoro deve contenere un <Service> radice o un elemento radice che contiene qualsiasi tipo derivato da 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. In caso di utilizzo del modello di attività Visual Studio 2012Visual Studio 2012, viene creato un file con estensione xamlx.When using the Visual Studio 2012Visual Studio 2012 Activity template a .xamlx file is created. In caso di utilizzo del modello di servizio flusso di lavoro WCF, viene creato un file con estensione xamlx.When using the WCF Workflow Service template a .xamlx file is created.

Hosting di servizi flusso di lavoro in Windows Server AppFabricHosting Workflow Services under Windows Server App Fabric

L'hosting di un servizio flusso di lavoro in Windows Server AppFabric è simile all'hosting in IIS/WAS.Hosting a workflow service under Windows Server App Fabric is done in the same way as hosting under IIS/WAS. L'unica differenza consiste nel fatto che Windows Server App Fabric viene installato.The only difference is the fact that Windows Server App Fabric is installed. In Windows Server AppFabric vengono forniti gli strumenti aggiunti a Gestione Internet Information Services, nonché i cmdlet PowerShell.Windows Server App Fabric provides tools that are added to Internet Information Services Manager, as well as powershell commandlets. Tali strumenti semplificano la distribuzione, la gestione e il rilevamento dei servizi flusso di lavoro e dei servizi WCF.These tools simplify deploying, managing, and tracking of workflow services and WCF services. .. Per ulteriori informazioni su Windows Server AppFabric vedere Windows Server AppFabricFor more information about Windows Server App Fabric see Windows Server App Fabric

Riferimento ad attività personalizzateReferencing Custom Activities

Aggiungere riferimenti alle attività personalizzate di <Assemblies> sezione nel <System.Web.Compilation> in modo che vengano caricati nel dominio applicazione e il deserializzatore XAML è in grado di individuare i tipi.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. È possibile configurare queste impostazioni a livello dell'applicazione o nel file Web.config radice, se tali impostazioni devono essere applicate a tutte le applicazioni nel computer.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.

DistribuzioneDeployment

Lo strumento Distribuzione Web è stato creato per agevolare il processo di distribuzione.The Web Deployment tool has been created to make the job of deployment easier. Lo strumento consente di eseguire la migrazione delle applicazioni tra IIS 6.0 e IIS 7.0, sincronizzare server farm e inserire in pacchetti, archiviare e distribuire applicazioni Web.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. Per altre informazioni, vedere dello strumento di distribuzione MSFor more information, see MS Deployment Tool

Vedere ancheSee Also

Elementi interni dell'host dei servizi flusso di lavoroWorkflow Service Host Internals
Configurazione di WorkflowServiceHostConfiguring WorkflowServiceHost