Exportar (0) Imprimir
Expandir todo
Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original.
Traducción
Original

Tipos de restricción

Este ejemplo muestra dos formas diferentes de aplicar restricciones a un flujo de trabajo: desde dentro de la actividad (compilación) y desde fuera de ella (directiva). En este escenario, un autor de actividad (de una compañía de software de terceros) desea validar la relación entre dos argumentos. En este caso, el coste debe ser menor o igual que al precio. Esta es una restricción de compilación de validación general.

A continuación, un propietario de tienda desea agregar alguna validación a esta actividad genérica. En su caso, desea que el precio de la mayoría de sus productos sea $ 9,99 o menos. Por lo tanto, utiliza una restricción de directiva que está en la parte superior de la actividad CreateProduct.

En el ejemplo:

El autor de actividad (compilación) debe:

  • Crear una restricción (PriceGreaterThanCost). Aquí es donde reside toda la lógica de validación.

  • Invalidar OnGetConstraints(IList<Constraint>) y agregar la restricción (PriceGreaterThanCost) a las restricciones IList.

El autor del flujo de trabajo (directiva) debe:

  • Crear un flujo de trabajo con una instancia de la actividad para validar (CreateProduct).

  • Crear una restricción (MaxPrice).

  • Crear una instancia de ValidatorSettings (validatorSettings) y agregar la restricción (MaxPrice) a la colección AdditionalConstraints. Aquí el autor del flujo de trabajo puede agregar restricciones de directiva a cualquier actividad, como una secuencia o paralela.

  • Llamar a Validate(WorkflowElement, ValidatorSettings), que devuelve una colección ValidationResults de objetos ConstraintViolation.

  • (Opcional) Imprimir los objetos ConstraintViolation.

Para configurar, compilar y ejecutar el ejemplo

  1. Abra la solución de ejemplo ConstraintTypes.sln en Visual Studio 2010.

  2. Compile y ejecute la solución.

Nota importante Importante

Puede que los ejemplos ya estén instalados en su equipo. Compruebe el siguiente directorio (predeterminado) antes de continuar.

<>InstallDrive:\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\Validation\ConstraintLibrary

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft