Actividades de flujo de control en WF

.NET Framework 4.6.1 proporciona varias actividades para controlar el flujo de ejecución dentro de un flujo de trabajo. Algunas de estas actividades (como Switch y If) implementan estructuras de control de flujo similares a las de entornos de programación como Visual C#, mientras que otras (como Pick) modelan nuevas estructuras de programación.

Tenga en cuenta que, aunque las actividades como y ParallelParallelForEach programan varias actividades secundarias para su ejecución simultáneamente, solo se usa un único subproceso para un flujo de trabajo. Cada actividad secundaria de estas actividades se ejecuta secuencialmente y las actividades sucesivas no se ejecutan hasta que las actividades anteriores se completan o van inactivas. Como resultado, estas actividades son más útiles para las aplicaciones en las que varias actividades potencialmente bloqueadas deben ejecutarse de forma intercalada. Si ninguna de las actividades secundarias de estas actividades deja de estar inactiva, una Parallel actividad se ejecuta igual que una Sequence actividad y una ParallelForEach actividad se ejecuta igual que una ForEach actividad. Sin embargo, si se usan actividades asincrónicas (como actividades que derivan de AsyncCodeActivity) o actividades de mensajería, el control pasará a la siguiente rama mientras la actividad secundaria espera a que se reciba su mensaje o su trabajo asincrónico se complete.

Actividades de control de flujo

Actividad Descripción
DoWhile Ejecuta las actividades contenidas una vez y continúa haciéndolo mientras una condición es true.
ForEach<T> Ejecuta una instrucción insertada en secuencia para cada elemento de una colección. ForEach<T> es similar a la palabra clave foreach, pero se implementa como una actividad en lugar de una instrucción de lenguaje.
If Ejecuta actividades independientes si una condición es truey puede ejecutar actividades contenidas en la Else propiedad si la condición es false.
Parallel Ejecuta actividades contenidas en paralelo.
ParallelForEach<T> Ejecuta una instrucción incrustada en paralelo para cada elemento de una colección.
Pick Proporciona modelado de flujo de control basado en eventos.
PickBranch Representa una ruta de acceso potencial de ejecución en una Pick actividad.
Sequence Ejecuta actividades contenidas en secuencia.
Switch<T> Selecciona una opción entre varias actividades que se van a ejecutar, en función del valor de una expresión determinada.
While Ejecuta actividades independientes mientras una condición es true.