StateMachineWorkflowActivity.CompletedStateName Propiedad

Definición

Obtiene o establece la clase StateActivity final del flujo de trabajo.

public:
 property System::String ^ CompletedStateName { System::String ^ get(); void set(System::String ^ value); };
public string CompletedStateName { get; set; }
member this.CompletedStateName : string with get, set
Public Property CompletedStateName As String

Valor de propiedad

StateActivity final del flujo de trabajo.

Ejemplos

En el ejemplo de código siguiente se muestra cómo establecer el valor de propiedad CompletedStateName. Este ejemplo de código forma parte del ejemplo de SDK de SimpleStateMachineWorkflow del archivo StateMachineWorkflow.cs. Para obtener más información, consulte Máquina de estado simple.

this.CanModifyActivities = true;
this.setCompletedState = new System.Workflow.Activities.SetStateActivity();
this.code2 = new System.Workflow.Activities.CodeActivity();
this.state1Delay = new System.Workflow.Activities.DelayActivity();
this.setState1 = new System.Workflow.Activities.SetStateActivity();
this.code1 = new System.Workflow.Activities.CodeActivity();
this.startStateDelay = new System.Workflow.Activities.DelayActivity();
this.eventDriven2 = new System.Workflow.Activities.EventDrivenActivity();
this.eventDriven1 = new System.Workflow.Activities.EventDrivenActivity();
this.CompletedState = new System.Workflow.Activities.StateActivity();
this.state1 = new System.Workflow.Activities.StateActivity();
this.StartState = new System.Workflow.Activities.StateActivity();
//
// setCompletedState
//
this.setCompletedState.Name = "setCompletedState";
this.setCompletedState.TargetStateName = "CompletedState";
//
// code2
//
this.code2.Name = "code2";
this.code2.ExecuteCode += new System.EventHandler(this.Code2Handler);
//
// state1Delay
//
this.state1Delay.Name = "state1Delay";
this.state1Delay.TimeoutDuration = System.TimeSpan.Parse("00:00:02");
//
// setState1
//
this.setState1.Name = "setState1";
this.setState1.TargetStateName = "state1";
//
// code1
//
this.code1.Name = "code1";
this.code1.ExecuteCode += new System.EventHandler(this.Code1Handler);
//
// startStateDelay
//
this.startStateDelay.Name = "startStateDelay";
this.startStateDelay.TimeoutDuration = System.TimeSpan.Parse("00:00:05");
//
// eventDriven2
//
this.eventDriven2.Activities.Add(this.state1Delay);
this.eventDriven2.Activities.Add(this.code2);
this.eventDriven2.Activities.Add(this.setCompletedState);
this.eventDriven2.Name = "eventDriven2";
//
// eventDriven1
//
this.eventDriven1.Activities.Add(this.startStateDelay);
this.eventDriven1.Activities.Add(this.code1);
this.eventDriven1.Activities.Add(this.setState1);
this.eventDriven1.Name = "eventDriven1";
//
// CompletedState
//
this.CompletedState.Name = "CompletedState";
Me.CanModifyActivities = True
Me.CompletedState = New System.Workflow.Activities.StateActivity
Me.code2 = New System.Workflow.Activities.CodeActivity
Me.state1Delay = New System.Workflow.Activities.DelayActivity
Me.setState1 = New System.Workflow.Activities.SetStateActivity()
Me.code1 = New System.Workflow.Activities.CodeActivity()
Me.startStateDelay = New System.Workflow.Activities.DelayActivity()
Me.eventDriven2 = New System.Workflow.Activities.EventDrivenActivity()
Me.eventDriven1 = New System.Workflow.Activities.EventDrivenActivity()
Me.CompletedState = New System.Workflow.Activities.StateActivity()
Me.state1 = New System.Workflow.Activities.StateActivity()
Me.StartState = New System.Workflow.Activities.StateActivity()
' 
' setCompletedState
'
Me.setCompletedState.Name = "setCompletedState"
Me.setCompletedState.TargetStateName = "CompletedState"
' 
' code2
' 
Me.code2.Name = "code2"
AddHandler Me.code2.ExecuteCode, AddressOf Me.Code2Handler

' 
' state1Delay
'
Me.state1Delay.Name = "state1Delay"
Me.state1Delay.TimeoutDuration = System.TimeSpan.Parse("00:00:02")
' 
' setState1
' 
Me.setState1.Name = "setState1"
Me.setState1.TargetStateName = "state1"
' 
' code1
' 
Me.code1.Name = "code1"
AddHandler Me.code1.ExecuteCode, AddressOf Me.Code1Handler
' 
' startStateDelay
' 
Me.startStateDelay.Name = "startStateDelay"
Me.startStateDelay.TimeoutDuration = System.TimeSpan.Parse("00:00:05")
' 
' eventDriven2
' 
Me.eventDriven2.Activities.Add(Me.state1Delay)
Me.eventDriven2.Activities.Add(Me.code2)
Me.eventDriven2.Activities.Add(Me.setCompletedState)
Me.eventDriven2.Name = "eventDriven2"
' 
' eventDriven1
' 
Me.eventDriven1.Activities.Add(Me.startStateDelay)
Me.eventDriven1.Activities.Add(Me.code1)
Me.eventDriven1.Activities.Add(Me.setState1)
Me.eventDriven1.Name = "eventDriven1"
' 
' CompletedState
' 
Me.CompletedState.Name = "CompletedState"

Comentarios

Cuando se realiza una transición a CompletedStateName, se completa la ejecución del flujo de trabajo. CompletedStateName no es obligatoria. Esto significa que puede tener una StateMachineWorkflowActivity incompleta. Esto no significa que el flujo de trabajo de equipo de estado siempre está activo en memoria. StateMachineWorkflowActivity se podría descargar cuando se espera por un evento.

Para obtener más información acerca de InitialStateName y CompletedStateName, vea StateMachineWorkflowActivity.

Se aplica a