StateMachineWorkflowActivity Classe

Definição

Cuidado

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

Funciona como o contêiner raiz para fluxos de trabalho da máquina de estado. Contém as atividades e os estados orientados ao evento.

public ref class StateMachineWorkflowActivity : System::Workflow::Activities::StateActivity
[System.Drawing.ToolboxBitmap(typeof(System.Workflow.Activities.StateMachineWorkflowActivity), "Resources.StateMachineWorkflowActivity.png")]
[System.Runtime.InteropServices.ComVisible(false)]
[System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.StateActivityValidator))]
public class StateMachineWorkflowActivity : System.Workflow.Activities.StateActivity
[System.Drawing.ToolboxBitmap(typeof(System.Workflow.Activities.StateMachineWorkflowActivity), "Resources.StateMachineWorkflowActivity.png")]
[System.Runtime.InteropServices.ComVisible(false)]
[System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.StateActivityValidator))]
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public class StateMachineWorkflowActivity : System.Workflow.Activities.StateActivity
[<System.Drawing.ToolboxBitmap(typeof(System.Workflow.Activities.StateMachineWorkflowActivity), "Resources.StateMachineWorkflowActivity.png")>]
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.StateActivityValidator))>]
type StateMachineWorkflowActivity = class
    inherit StateActivity
[<System.Drawing.ToolboxBitmap(typeof(System.Workflow.Activities.StateMachineWorkflowActivity), "Resources.StateMachineWorkflowActivity.png")>]
[<System.Runtime.InteropServices.ComVisible(false)>]
[<System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.StateActivityValidator))>]
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type StateMachineWorkflowActivity = class
    inherit StateActivity
Public Class StateMachineWorkflowActivity
Inherits StateActivity
Herança
Atributos

Exemplos

O exemplo de código a seguir mostra como criar uma nova instância da StateMachineWorkflowActivity classe e usá-la para implementar uma máquina de estado básica para fazer a transição entre três estados. Este exemplo de código faz parte do exemplo do SDK SimpleStateMachineWorkflow do arquivo StateMachineWorkflow.cs. Para obter mais informações, consulte Máquina de estado simples.

this.WhileLoop = new System.Workflow.Activities.WhileActivity();
this.Parallel = new System.Workflow.Activities.ParallelActivity();
this.Sequence1 = new System.Workflow.Activities.SequenceActivity();
this.Sequence2 = new System.Workflow.Activities.SequenceActivity();
this.ConsoleMessage1 = new System.Workflow.Activities.CodeActivity();
this.ConsoleMessage2 = new System.Workflow.Activities.CodeActivity();
//
// WhileLoop
//
this.WhileLoop.Activities.Add(this.Parallel);
codecondition1.Condition += new System.EventHandler<System.Workflow.Activities.ConditionalEventArgs>(this.WhileCondition);
this.WhileLoop.Condition = codecondition1;
this.WhileLoop.Name = "WhileLoop";
//
// Parallel
//
this.Parallel.Activities.Add(this.Sequence1);
this.Parallel.Activities.Add(this.Sequence2);
this.Parallel.Name = "Parallel";
Me.WhileLoop = New System.Workflow.Activities.WhileActivity()
Me.Parallel = New System.Workflow.Activities.ParallelActivity()
Me.Sequence1 = New System.Workflow.Activities.SequenceActivity()
Me.Sequence2 = New System.Workflow.Activities.SequenceActivity()
Me.ConsoleMessage1 = New System.Workflow.Activities.CodeActivity()
Me.ConsoleMessage2 = New System.Workflow.Activities.CodeActivity()
' 
' WhileLoop
' 
Me.WhileLoop.Activities.Add(Me.Parallel)
AddHandler codecondition1.Condition, AddressOf Me.WhileCondition
Me.WhileLoop.Condition = codecondition1
Me.WhileLoop.Name = "WhileLoop"
' 
' Parallel
' 
Me.Parallel.Activities.Add(Me.Sequence1)
Me.Parallel.Activities.Add(Me.Sequence2)
Me.Parallel.Name = "Parallel"

Comentários

Observação

Este material discute tipos e namespaces obsoletos. Para obter mais informações, consulte Deprecated Types in Windows Workflow Foundation 4.5 (Tipos preteridos no Windows Workflow Foundation 4.5).

O StateMachineWorkflowActivity é um contêiner de atividade usado para criar fluxos de trabalho que seguem um modelo de máquina de estado.

O StateMachineWorkflowActivity é um CompositeActivity, o que significa que o StateMachineWorkflowActivity pode conter outras atividades. As StateMachineWorkflowActivity atividades e EventDrivenActivity são as únicas atividades filho permitidas do StateMachineWorkflowActivity. EventDrivenActivity atividades são permitidas porque a própria atividade raiz se comporta como um estado. Portanto, você pode ter EventDrivenActivity atividades no nível raiz que são usadas por todas as atividades de Estado no StateMachineWorkflowActivity. EventDrivenActivity as atividades nesse nível fornecem um mecanismo global para processar eventos de fluxo de trabalho e automatizar transições de estado. StateActivity as atividades fornecem um mecanismo para definir os vários estágios no modelo.

O StateMachineWorkflowActivity tem propriedades que são necessárias para a execução do fluxo de trabalho do computador de estado. Mais notavelmente, o StateMachineWorkflowActivity tem duas propriedades que são importantes: InitialStateNameProperty e CompletedStateNameProperty.

O InitialStateNameProperty da máquina de estado é o estado no qual o computador de estado é quando uma instância do computador de estado é criada. A InitialStateNameProperty propriedade é obrigatória e deve ser fornecida quando um StateMachineWorkflowActivity é criado. O InitialStateNameProperty da máquina de estado é como qualquer outra atividade de estado contida no computador de estado. A atividade de estado pode ser um filho direto da StateMachineWorkflowActivity atividade raiz e um StateMachineWorkflowActivity pode ter apenas um InitialStateNameProperty.

O CompletedStateNameProperty de é uma StateActivity atividade que é designada como o estado final do StateMachineWorkflowActivityStateMachineWorkflowActivity . Quando uma transição é feita para o CompletedStateNameProperty, a execução do fluxo de trabalho é concluída. O CompletedStateNameProperty não é obrigatório. Isso significa que você pode ter um StateMachineWorkflowActivity que não foi concluído. Isso não significa que o fluxo de trabalho do computador de estado esteja sempre ativo na memória. O StateMachineWorkflowActivity pode ser descarregado enquanto aguarda um evento.

StateMachineWorkflowActivity atividades que nunca são concluídas são especialmente úteis no processamento de transações comerciais de longa execução, como no caso de uma ordem de compra recebida por um fornecedor. O fato de que a ordem de compra foi cumprida não significa que o processo de ordem de compra acabou. As mercadorias que fazem parte da ordem de compra podem ser retornadas ou a ordem de compra pode ser alterada e ter itens adicionais adicionados a ela após o cumprimento. Às vezes, pode haver um requisito para manter os registros de ordem de compra por um longo período de tempo para fins legais ou outros. O fato de um fluxo de trabalho não ser concluído significa apenas que o fluxo de trabalho permanece em um estado descarregado. Pode haver um caso para desativar os fluxos de trabalho, o que significa que, após um determinado período de tempo, a instância de fluxo de trabalho pode ser forçada a desligar.

Construtores

StateMachineWorkflowActivity()
Obsoleto.

Inicializa uma nova instância da classe StateMachineWorkflowActivity.

StateMachineWorkflowActivity(String)
Obsoleto.

Inicializa uma nova instância da classe StateMachineWorkflowActivity usando o nome da atividade.

Campos

CompletedStateNameProperty
Obsoleto.

Representa o DependencyObject que tem como destino a propriedade CompletedStateName.

InitialStateNameProperty
Obsoleto.

Representa o DependencyObject que tem como destino a propriedade InitialStateName.

SetStateQueueName
Obsoleto.

O nome do WorkflowQueue usado para alterar o estado de um StateMachineWorkflowActivity. Este campo é constante.

StateChangeTrackingDataKey
Obsoleto.

Retém o valor de cadeia de caracteres da chave de dados de controle de alterações; "StateActivity.StateChange". Este campo é uma constante.

(Herdado de StateActivity)

Propriedades

Activities
Obsoleto.

Obtém o objeto que representa a coleção, ActivityCollection, de todas as atividades filho.

(Herdado de CompositeActivity)
CanModifyActivities
Obsoleto.

Obtém ou define um valor que controla se as atividades individuais em Activities podem ser modificadas.

(Herdado de CompositeActivity)
CompletedStateName
Obsoleto.

Obtém ou define o StateActivity de extremidade do fluxo de trabalho.

CurrentStateName
Obsoleto.

Obtém o nome do StateActivity em execução no momento.

Description
Obsoleto.

Obtém ou define a descrição definida pelo usuário da Activity.

(Herdado de Activity)
DesignMode
Obsoleto.

Obtém o valor que indica se esta instância está em modo de design ou de tempo de execução.

(Herdado de DependencyObject)
DynamicUpdateCondition
Obsoleto.

Obtém ou define um ActivityCondition que determina se as atualizações dinâmicas podem ser feitas no fluxo de trabalho, quando substituído em uma classe derivada.

Enabled
Obsoleto.

Obtém ou define um valor que indica se esta instância está habilitada para execução e validação.

(Herdado de Activity)
EnabledActivities
Obsoleto.

Obtém a coleção somente leitura que representa o subconjunto de Activities que estão habilitados.

(Herdado de CompositeActivity)
ExecutionResult
Obsoleto.

Obtém o ActivityExecutionResult da última tentativa de executar essa instância.

(Herdado de Activity)
ExecutionStatus
Obsoleto.

Obtém o ActivityExecutionStatus atual dessa instância.

(Herdado de Activity)
InitialStateName
Obsoleto.

Obtém ou define o StateActivity no qual o StateMachineWorkflowActivity está quando uma instância da máquina de estado é criada.

IsDynamicActivity
Obsoleto.

Obtém informações sobre se a atividade está em execução dentro do ActivityExecutionContext padrão da instância de fluxo de trabalho.

(Herdado de Activity)
Name
Obsoleto.

Obtém ou define o nome desta instância. Este nome deve estar em conformidade com as convenções de nomenclatura de variável da linguagem de programação que está sendo usada no projeto de fluxo de trabalho.

(Herdado de Activity)
Parent
Obsoleto.

Obtém o CompositeActivity que contém esse Activity.

(Herdado de Activity)
ParentDependencyObject
Obsoleto.

Obtém o DependencyObject pai no grafo DependencyObject.

(Herdado de DependencyObject)
PreviousStateName
Obsoleto.

Obtém o nome do StateActivity executado anteriormente.

QualifiedName
Obsoleto.

Obtém o nome qualificado da atividade. Nomes de atividades qualificados sempre são exclusivos em uma instância de fluxo de trabalho.

(Herdado de Activity)
Site
Obsoleto.

Obtém ou define uma referência ao componente Site do DependencyObject.

(Herdado de DependencyObject)
UserData
Obsoleto.

Obtém um IDictionary que associa dados personalizados a essa instância de classe.

(Herdado de DependencyObject)
WorkflowInstanceId
Obsoleto.

Obtém o Guid associado à instância.

(Herdado de Activity)

Métodos

AddHandler(DependencyProperty, Object)
Obsoleto.

Adiciona um manipulador para um evento de um DependencyObject.

(Herdado de DependencyObject)
ApplyWorkflowChanges(WorkflowChanges)
Obsoleto.

Aplica o manifesto WorkflowChanges no parâmetro a esta instância.

(Herdado de CompositeActivity)
Cancel(ActivityExecutionContext)
Obsoleto.

Cancela a execução do StateActivity.

(Herdado de StateActivity)
Clone()
Obsoleto.

Cria uma cópia profunda do Activity.

(Herdado de Activity)
Dispose()
Obsoleto.

Libera todos os recursos usados pelo DependencyObject.

(Herdado de DependencyObject)
Dispose(Boolean)
Obsoleto.

Chama Dispose(Boolean) nesta instância e, opcionalmente, chama Dispose() em todas as atividades filho desta instância.

(Herdado de CompositeActivity)
Equals(Object)
Obsoleto.

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
Execute(ActivityExecutionContext)
Obsoleto.

Executa a StateActivity.

(Herdado de StateActivity)
GetActivityByName(String)
Obsoleto.

Retorna a instância do Activity cujo nome é solicitado do conjunto de todas as atividades em execução na atividade raiz desta instância, que está dentro do fluxo de trabalho.

(Herdado de Activity)
GetActivityByName(String, Boolean)
Obsoleto.

Retorna a instância do Activity cujo nome é solicitado do conjunto de todas as atividades sob a raiz do Activity desta instância se o segundo parâmetro é false e no Activity atual se o parâmetro é true.

(Herdado de Activity)
GetBinding(DependencyProperty)
Obsoleto.

Fornece acesso para ao ActivityBind associado ao DependencyProperty específico.

(Herdado de DependencyObject)
GetBoundValue(ActivityBind, Type)
Obsoleto.

Recupera o Object que é a entidade de um ActivityBind.

(Herdado de DependencyObject)
GetDynamicActivities(Activity)
Obsoleto.

Retorna uma matriz que contém todas as instâncias em execução no momento da atividade especificada.

(Herdado de CompositeActivity)
GetDynamicActivity(String)
Obsoleto.

Obtém a instância de execução do Activity que corresponde ao nome da atividade filho especificada.

(Herdado de StateActivity)
GetHashCode()
Obsoleto.

Serve como a função de hash padrão.

(Herdado de Object)
GetInvocationList<T>(DependencyProperty)
Obsoleto.

Obtém uma matriz que contém os delegados para o DependencyProperty especificado.

(Herdado de DependencyObject)
GetType()
Obsoleto.

Obtém o Type da instância atual.

(Herdado de Object)
GetValue(DependencyProperty)
Obsoleto.

Fornece acesso ao valor do DependencyProperty designado.

(Herdado de DependencyObject)
GetValueBase(DependencyProperty)
Obsoleto.

Fornece acesso ao objeto associado de um DependencyProperty e ignora a substituição de GetValue(DependencyProperty).

(Herdado de DependencyObject)
HandleFault(ActivityExecutionContext, Exception)
Obsoleto.

Chamado quando uma exceção é gerada dentro do contexto da execução desta instância.

(Herdado de CompositeActivity)
Initialize(IServiceProvider)
Obsoleto.

Inicializa o StateActivity usando o provedor de serviços.

(Herdado de StateActivity)
InitializeProperties()
Obsoleto.

Executa a inicialização nas propriedades de dependência quando substituído em uma classe derivada.

(Herdado de DependencyObject)
Invoke<T>(EventHandler<T>, T)
Obsoleto.

Assina um EventHandler e invoca esse delegado.

(Herdado de Activity)
Invoke<T>(IActivityEventListener<T>, T)
Obsoleto.

Assina um IActivityEventListener<T> e invoca esse delegado.

(Herdado de Activity)
IsBindingSet(DependencyProperty)
Obsoleto.

Indica se o valor de um DependencyProperty é definido como uma associação. Consulte SetBinding(DependencyProperty, ActivityBind).

(Herdado de DependencyObject)
MemberwiseClone()
Obsoleto.

Cria uma cópia superficial do Object atual.

(Herdado de Object)
MetaEquals(DependencyObject)
Obsoleto.

Determina se o metaproperties deste DependencyObject é igual a metaproperties do DependencyObject com parâmetros.

(Herdado de DependencyObject)
OnActivityChangeAdd(ActivityExecutionContext, Activity)
Obsoleto.

Determina se a atividade que está sendo adicionada é um EventDrivenActivity e, em caso afirmativo, verifica se o evento recém-adicionado controlado precisa ser assinado.

(Herdado de StateActivity)
OnActivityChangeRemove(ActivityExecutionContext, Activity)
Obsoleto.

Chamado quando uma atividade é removida.

(Herdado de CompositeActivity)
OnActivityExecutionContextLoad(IServiceProvider)
Obsoleto.

Chamado pelo mecanismo de runtime de fluxo de trabalho sempre que o ActivityExecutionContext para esta atividade for carregado.

(Herdado de CompositeActivity)
OnActivityExecutionContextUnload(IServiceProvider)
Obsoleto.

Chamado pelo mecanismo de runtime de fluxo de trabalho sempre que o ActivityExecutionContext para esta atividade for descarregado.

(Herdado de CompositeActivity)
OnClosed(IServiceProvider)
Obsoleto.

Chamado pelo mecanismo de runtime de fluxo de trabalho como parte da transição da atividade para o estado Closed.

(Herdado de StateActivity)
OnListChanged(ActivityCollectionChangeEventArgs)
Obsoleto.

Executa o processamento adicional quando a propriedade Activities é alterada.

(Herdado de CompositeActivity)
OnListChanging(ActivityCollectionChangeEventArgs)
Obsoleto.

Evento que ocorre antes que uma alteração é feita no Activities subjacente.

(Herdado de CompositeActivity)
OnWorkflowChangesCompleted(ActivityExecutionContext)
Obsoleto.

Chamado depois que forem feitas alterações na coleção Activities desta instância.

(Herdado de CompositeActivity)
RaiseEvent(DependencyProperty, Object, EventArgs)
Obsoleto.

Gera um Event associado à propriedade de dependência especificada.

(Herdado de Activity)
RaiseGenericEvent<T>(DependencyProperty, Object, T)
Obsoleto.

Gera o evento associado com o DependencyProperty referenciado.

(Herdado de Activity)
RegisterForStatusChange(DependencyProperty, IActivityEventListener<ActivityExecutionStatusChangedEventArgs>)
Obsoleto.

Registra o DependencyProperty especificado para o evento de alteração de status.

(Herdado de Activity)
RemoveHandler(DependencyProperty, Object)
Obsoleto.

Remove um EventHandler de um DependencyProperty associado.

(Herdado de DependencyObject)
RemoveProperty(DependencyProperty)
Obsoleto.

Remove um DependencyProperty do DependencyObject.

(Herdado de DependencyObject)
Save(Stream)
Obsoleto.

Grava o Activity para um Stream para persistência.

(Herdado de Activity)
Save(Stream, IFormatter)
Obsoleto.

Grava o Activity para um Stream para persistência usando o IFormatter personalizado fornecido para a serialização.

(Herdado de Activity)
SetBinding(DependencyProperty, ActivityBind)
Obsoleto.

Define o ActivityBind para o DependencyProperty especificado.

(Herdado de DependencyObject)
SetBoundValue(ActivityBind, Object)
Obsoleto.

Define o valor do ActivityBind de destino.

(Herdado de DependencyObject)
SetReadOnlyPropertyValue(DependencyProperty, Object)
Obsoleto.

Define o valor de um DependencyProperty, que é somente leitura.

(Herdado de DependencyObject)
SetValue(DependencyProperty, Object)
Obsoleto.

Define o valor do DependencyProperty para o objeto.

(Herdado de DependencyObject)
SetValueBase(DependencyProperty, Object)
Obsoleto.

Define o valor da DependencyProperty usando o Object especificado, ignorando o SetValue(DependencyProperty, Object).

(Herdado de DependencyObject)
ToString()
Obsoleto.

Fornece uma cadeia de caracteres que representa essa instância.

(Herdado de Activity)
TrackData(Object)
Obsoleto.

Informa a infraestrutura de acompanhamento de tempo de execução das informações de acompanhamento pendentes.

(Herdado de Activity)
TrackData(String, Object)
Obsoleto.

Informa a infraestrutura de acompanhamento de tempo de execução das informações de acompanhamento pendentes.

(Herdado de Activity)
Uninitialize(IServiceProvider)
Obsoleto.

Chamado pelo mecanismo de runtime de fluxo de trabalho quando uma atividade faz a transição para o estado Closed do estado Initialized.

(Herdado de CompositeActivity)
UnregisterForStatusChange(DependencyProperty, IActivityEventListener<ActivityExecutionStatusChangedEventArgs>)
Obsoleto.

Cancela o registro do DependencyProperty especificado para o evento de alteração de status.

(Herdado de Activity)

Eventos

Canceling
Obsoleto.

Ocorre quando a execução da atividade é cancelada.

(Herdado de Activity)
Closed
Obsoleto.

Ocorre quando um Activity concluiu a execução.

(Herdado de Activity)
Compensating
Obsoleto.

Ocorre durante a execução de um método de compensação no Activity.

(Herdado de Activity)
Executing
Obsoleto.

Ocorre quando o Activity é executado.

(Herdado de Activity)
Faulting
Obsoleto.

Ocorre quando uma exceção é gerada durante a execução da instância.

(Herdado de Activity)
StatusChanged
Obsoleto.

Ocorre quando o ActivityExecutionStatus de um Activity em execução muda.

(Herdado de Activity)

Implantações explícitas de interface

IComponent.Disposed
Obsoleto.

Representa o método que manipula o evento Disposed de um componente.

(Herdado de DependencyObject)

Aplica-se a

Confira também