Compartir a través de


OperationScope

Este tema es aplicable a Windows Workflow Foundation 4.

En este ejemplo se muestra cómo las actividades de mensajería, Receive y SendReply, se pueden utilizar para exponer una actividad personalizada existente como una operación en un servicio de flujo de trabajo. En este ejemplo se incluye una nueva actividad personalizada denominada OperationScope. Pretende facilitar el desarrollo de un servicio de flujo de trabajo permitiendo a los usuarios crear el cuerpo de sus operaciones por separado como actividades personalizadas y exponiéndolas fácilmente como operaciones del servicio mediante la actividad OperationScope. Por ejemplo, una actividad Add personalizada que toma dos argumentos in y devuelve un argumento out se puede exponer como una operación Add en el servicio de flujo de trabajo si se coloca en una actividad OperationScope.

El ámbito funciona inspeccionando la actividad proporcionada como su cuerpo. Se supone que los argumentos in no enlazados son entradas del mensaje entrante. Se supone que todos los argumentos out, independientemente de si están enlazados, son salidas en el mensaje de respuesta subsiguiente. El nombre de la operación expuesta se toma del nombre para mostrar de la actividad OperationScope. El resultado final es que la actividad del cuerpo se incluye en las actividades Receive y SendReply con los parámetros de los mensajes enlazados a los argumentos de la actividad.

En este ejemplo se expone un servicio del flujo de trabajo mediante extremos HTTP. Para ejecutarlo, se deben agregar las ACL de dirección URL apropiadas. Para obtener más información, vea Configurar HTTP y HTTPS. Al ejecutar el siguiente comando en un símbolo del sistema elevado, se agregan las ACL adecuadas (asegúrese de que %DOMAIN%\%UserName% se reemplaza con el dominio y nombre de usuario).

netsh http add urlacl url=http://+:8000/ user=%DOMAIN%\%UserName%

Para ejecutar el ejemplo

  1. Abra la solución OperationScope.sln en Visual Studio 2010.

  2. Establezca varios proyectos de inicio haciendo clic con el botón secundario en la solución en el Explorador de soluciones y seleccionando Establecer proyectos de inicio. Agregue Scenario y Scenario_Client (en ese orden) como proyectos de inicio múltiples.

  3. Presione F6 para compilar la solución.

    Ee662961.Warning(es-es,VS.100).gif Precaución:
    Este paso es necesario para ver el flujo de trabajo de BankService.xaml debido a la actividad OperationScope personalizada.

  4. Presione CTRL+F5 para ejecutar la aplicación. La consola de Scenario_Client solicita las entradas; el resultado correspondiente se ve en la consola de Scenario.

Ee662961.Important(es-es,VS.100).gif Nota:
Puede que los ejemplos ya estén instalados en su equipo. Compruebe el siguiente directorio (valor predeterminado) antes de continuar.

<unidadDeInstalación>:\WF_WCF_Samples

Si no existe este directorio, vaya a la página de ejemplos de Windows Communication Foundation (WCF) y Windows Workflow Foundation (WF) Samples para .NET Framework 4 para descargar todos los ejemplos de Windows Communication Foundation (WCF) y WF. Este ejemplo se encuentra en el siguiente directorio.

<unidadDeInstalación>:\WF_WCF_Samples\WF\Scenario\Services\OperationScope