StateMachineWorkflowActivity Classe

Definizione

Attenzione

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

Serve come contenitore radice per i flussi di lavoro di macchine a stati. Contiene attività e stati basati sugli eventi.

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
Ereditarietà
Attributi

Esempio

Nell'esempio di codice seguente viene illustrato come creare una nuova istanza della classe StateMachineWorkflowActivity e come utilizzarla per implementare una macchina a stati di base per la transizione tra tre stati. Questo esempio di codice è parte dell'esempio SDK SimpleStateMachineWorkflow nel file StateMachineWorkflow.cs. Per altre informazioni, vedere Macchina a stati semplice.

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"

Commenti

Nota

In questo materiale vengono descritti tipi e spazi dei nomi obsoleti. Per altre informazioni, vedere Deprecated Types in Windows Workflow Foundation 4.5 (Tipi deprecati in Windows Workflow Foundation 4.5).

StateMachineWorkflowActivity è un contenitore di attività utilizzato per creare flussi di lavoro che seguono un modello di macchina a stati.

L'attività StateMachineWorkflowActivity è un'attività CompositeActivity, vale a dire che l'attività StateMachineWorkflowActivity può contenere altre attività. Le attività StateMachineWorkflowActivity e EventDrivenActivity sono le uniche attività figlio consentite delle attività StateMachineWorkflowActivity. Le attività EventDrivenActivity sono consentite perché l'attività radice stessa si comporta come uno stato. Di conseguenza, è possibile avere attività EventDrivenActivity a livello radice che vengono utilizzate da tutte le attività di stato in StateMachineWorkflowActivity. Le attività EventDrivenActivity a questo livello forniscono un meccanismo globale per elaborare gli eventi del flusso di lavoro e automatizzare le transizioni di stato. Le attività StateActivity forniscono un meccanismo per definire le varie fasi nel modello.

StateMachineWorkflowActivity dispone di proprietà necessarie per l'esecuzione del flusso di lavoro della macchina a stati. In particolare, due proprietà di StateMachineWorkflowActivity sono importanti: InitialStateNameProperty e CompletedStateNameProperty.

La proprietà InitialStateNameProperty della macchina a stati corrisponde allo stato attivo della macchina a stati nel momento in cui viene creata un'istanza della macchina a stati. La proprietà InitialStateNameProperty è obbligatoria e deve essere specificata quando viene creata una StateMachineWorkflowActivity. InitialStateNameProperty della macchina a stati è come qualsiasi altra attività di stato contenuta all'interno della macchina a stati. L'attività di stato può essere un figlio diretto dell'attività radice StateMachineWorkflowActivity e una StateMachineWorkflowActivity può avere solo una InitialStateNameProperty.

CompletedStateNameProperty della StateMachineWorkflowActivity è un'attività StateActivity definita come stato finale della StateMachineWorkflowActivity. Quando è stata effettuata una transizione alla CompletedStateNameProperty, l'esecuzione del flusso di lavoro è completata. La CompletedStateNameProperty non è obbligatoria. Questo significa che è possibile avere una StateMachineWorkflowActivity che non è completata. Ciò non significa che il flusso di lavoro della macchina a stati è sempre attivo in memoria. StateMachineWorkflowActivity può essere scaricata in quanto attende un evento.

Le attività StateMachineWorkflowActivity che non vengono mai completate sono particolarmente utili nell'elaborazione di transazioni aziendali a esecuzione prolungata, come nel caso di un ordine di acquisto ricevuto da un fornitore. Il fatto che l'ordine di acquisto sia stato evaso non significa che la procedura dell'ordine di acquisto è terminata. Le merci che fanno parte dell'ordine di acquisto possono venire restituite o l'ordine di acquisto potrebbe essere corretto con altri articoli aggiunti dopo l'evasione. In alcuni casi vi può essere un requisito di conservare la documentazione dell'ordine di acquisto per un periodo prolungato a fini legali o di altro tipo. Il fatto che un flusso di lavoro non finisca significa semplicemente che rimane in un stato non scaricato. Può capitare una situazione di rientro dei flussi di lavoro, il che significa che dopo un periodo tempo stabilito l'istanza del flusso di lavoro deve essere chiusa.

Costruttori

StateMachineWorkflowActivity()
Obsoleti.

Inizializza una nuova istanza della classe StateMachineWorkflowActivity.

StateMachineWorkflowActivity(String)
Obsoleti.

Inizializza una nuova istanza della classe StateMachineWorkflowActivity mediante il nome dell'attività.

Campi

CompletedStateNameProperty
Obsoleti.

Rappresenta la classe DependencyObject che fa riferimento alla proprietà CompletedStateName.

InitialStateNameProperty
Obsoleti.

Rappresenta la classe DependencyObject che fa riferimento alla proprietà InitialStateName.

SetStateQueueName
Obsoleti.

Il nome della WorkflowQueue utilizzata per modificare lo stato di una StateMachineWorkflowActivity. Questo campo è costante.

StateChangeTrackingDataKey
Obsoleti.

Contiene il valore della stringa della chiave dati della ricerca delle modifiche; "StateActivity.StateChange." Il campo è una costante.

(Ereditato da StateActivity)

Proprietà

Activities
Obsoleti.

Ottiene l'oggetto che rappresenta la raccolta, ActivityCollection, di tutte le attività figlio.

(Ereditato da CompositeActivity)
CanModifyActivities
Obsoleti.

Ottiene o imposta un valore che controlla se le attività singole all'interno di Activities possono essere modificate.

(Ereditato da CompositeActivity)
CompletedStateName
Obsoleti.

Ottiene o imposta la StateActivity finale del flusso di lavoro.

CurrentStateName
Obsoleti.

Ottiene il nome dell'oggetto StateActivity attualmente in esecuzione.

Description
Obsoleti.

Ottiene o imposta la descrizione definita dall'utente dell'oggetto Activity.

(Ereditato da Activity)
DesignMode
Obsoleti.

Ottiene il valore che indica se l’istanza è in modalità di progettazione o esecuzione.

(Ereditato da DependencyObject)
DynamicUpdateCondition
Obsoleti.

Ottiene o imposta una ActivityCondition che determina se è possibile eseguire gli aggiornamenti dinamici nel flusso di lavoro, quando viene eseguito l'override in una classe derivata.

Enabled
Obsoleti.

Ottiene o imposta un valore che indica se l'istanza è abilitata per l'esecuzione e la convalida.

(Ereditato da Activity)
EnabledActivities
Obsoleti.

Ottiene la raccolta di sola lettura che rappresenta il sottoinsieme delle Activities abilitate.

(Ereditato da CompositeActivity)
ExecutionResult
Obsoleti.

Ottiene l’enumerazione ActivityExecutionResult dell’ultimo tentativo di esecuzione dell’istanza.

(Ereditato da Activity)
ExecutionStatus
Obsoleti.

Ottiene lo stato corrente ActivityExecutionStatus dell’istanza.

(Ereditato da Activity)
InitialStateName
Obsoleti.

Ottiene o imposta l'oggetto StateActivity in cui StateMachineWorkflowActivity corrisponde al momento in cui è stata creata un'istanza della macchina a stati.

IsDynamicActivity
Obsoleti.

Ottiene informazioni che indicano se l'attività è in esecuzione o meno all'interno dell'oggetto ActivityExecutionContext predefinito dell'istanza del flusso di lavoro.

(Ereditato da Activity)
Name
Obsoleti.

Ottiene o imposta il nome dell'istanza. Questo nome deve essere conforme alle convenzioni di denominazione delle variabili per il linguaggio di programmazione che si sta utilizzando nel progetto di flusso di lavoro.

(Ereditato da Activity)
Parent
Obsoleti.

Ottiene l'oggetto CompositeActivity che contiene questo Activity.

(Ereditato da Activity)
ParentDependencyObject
Obsoleti.

Ottiene l’oggetto DependencyObject padre nel grafico di DependencyObject.

(Ereditato da DependencyObject)
PreviousStateName
Obsoleti.

Ottiene il nome della classe StateActivity eseguita in precedenza.

QualifiedName
Obsoleti.

Ottiene il nome completo dell’attività. In un'istanza del flusso di lavoro, i nomi completi di attività sono sempre univoci.

(Ereditato da Activity)
Site
Obsoleti.

Ottiene o imposta un riferimento al componente Site di DependencyObject.

(Ereditato da DependencyObject)
UserData
Obsoleti.

Ottiene un’interfaccia IDictionary che associa dati personalizzati a questa istanza della classe.

(Ereditato da DependencyObject)
WorkflowInstanceId
Obsoleti.

Ottiene l’identificativo Guid associato all’istanza.

(Ereditato da Activity)

Metodi

AddHandler(DependencyProperty, Object)
Obsoleti.

Aggiunge un gestore per un evento di una classe DependencyObject.

(Ereditato da DependencyObject)
ApplyWorkflowChanges(WorkflowChanges)
Obsoleti.

Applica il manifesto nel parametro WorkflowChanges a questa istanza.

(Ereditato da CompositeActivity)
Cancel(ActivityExecutionContext)
Obsoleti.

Annulla l'esecuzione di StateActivity.

(Ereditato da StateActivity)
Clone()
Obsoleti.

Crea una copia completa della classe Activity.

(Ereditato da Activity)
Dispose()
Obsoleti.

Libera tutte le risorse utilizzate dall'oggetto DependencyObject.

(Ereditato da DependencyObject)
Dispose(Boolean)
Obsoleti.

Chiama il metodo Dispose(Boolean) sull’istanza e, in via facoltativa, chiama il metodo Dispose() su tutte le attività figlio dell’istanza.

(Ereditato da CompositeActivity)
Equals(Object)
Obsoleti.

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
Execute(ActivityExecutionContext)
Obsoleti.

Esegue StateActivity.

(Ereditato da StateActivity)
GetActivityByName(String)
Obsoleti.

Restituisce l'istanza dell'oggetto Activity, il cui nome viene richiesto dal set di tutte le attività in esecuzione nell'attività radice di questa istanza che si trova all'interno del flusso di lavoro.

(Ereditato da Activity)
GetActivityByName(String, Boolean)
Obsoleti.

Restituisce l’istanza di Activity il cui nome viene richiesto dal set di tutte le attività sotto la classe radice Activity di questa istanza, se il secondo parametro è false e sotto la classe Activity corrente se il secondo parametro è true.

(Ereditato da Activity)
GetBinding(DependencyProperty)
Obsoleti.

Fornisce l’accesso alla classe ActivityBind associata alla classe DependencyProperty specifica.

(Ereditato da DependencyObject)
GetBoundValue(ActivityBind, Type)
Obsoleti.

Recupera l'oggetto Object che corrisponde al soggetto di una classe ActivityBind.

(Ereditato da DependencyObject)
GetDynamicActivities(Activity)
Obsoleti.

Restituisce una matrice che contiene tutte le istanze dell'attività specificata attualmente in esecuzione.

(Ereditato da CompositeActivity)
GetDynamicActivity(String)
Obsoleti.

Ottiene l'istanza di esecuzione di Activity che corrisponde al nome dell'attività figlio specificato.

(Ereditato da StateActivity)
GetHashCode()
Obsoleti.

Funge da funzione hash predefinita.

(Ereditato da Object)
GetInvocationList<T>(DependencyProperty)
Obsoleti.

Ottiene una matrice che contiene i delegati per la classe DependencyProperty specificata.

(Ereditato da DependencyObject)
GetType()
Obsoleti.

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
GetValue(DependencyProperty)
Obsoleti.

Fornisce l’accesso al valore della classe DependencyProperty designata.

(Ereditato da DependencyObject)
GetValueBase(DependencyProperty)
Obsoleti.

Fornisce l’accesso all’oggetto associato di una classe DependencyProperty, ignorando l’override di GetValue(DependencyProperty).

(Ereditato da DependencyObject)
HandleFault(ActivityExecutionContext, Exception)
Obsoleti.

Chiamato quando all'interno del contesto di esecuzione di questa istanza viene generata un'eccezione.

(Ereditato da CompositeActivity)
Initialize(IServiceProvider)
Obsoleti.

Inizializza StateActivity utilizzando il provider di servizi.

(Ereditato da StateActivity)
InitializeProperties()
Obsoleti.

Esegue l’inizializzazione sulle proprietà di dipendenza quando ne viene eseguito l’override in una classe derivata.

(Ereditato da DependencyObject)
Invoke<T>(EventHandler<T>, T)
Obsoleti.

Sottoscrive un EventHandler e richiama il delegato.

(Ereditato da Activity)
Invoke<T>(IActivityEventListener<T>, T)
Obsoleti.

Sottoscrive un IActivityEventListener<T> e richiama il delegato.

(Ereditato da Activity)
IsBindingSet(DependencyProperty)
Obsoleti.

Indica se il valore di DependencyProperty è impostato come un'associazione. Vedere SetBinding(DependencyProperty, ActivityBind).

(Ereditato da DependencyObject)
MemberwiseClone()
Obsoleti.

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
MetaEquals(DependencyObject)
Obsoleti.

Determina se le metaproperties di DependencyObject sono uguali alle metaproperties della classe DependencyObject parametrizzata.

(Ereditato da DependencyObject)
OnActivityChangeAdd(ActivityExecutionContext, Activity)
Obsoleti.

Determina se l'attività da aggiungere è EventDrivenActivity e in tal caso, verifica se la nuova aggiunta basata sugli eventi deve essere sottoscritta.

(Ereditato da StateActivity)
OnActivityChangeRemove(ActivityExecutionContext, Activity)
Obsoleti.

Chiamato quando un'attività viene rimossa.

(Ereditato da CompositeActivity)
OnActivityExecutionContextLoad(IServiceProvider)
Obsoleti.

Chiamato dal motore di runtime del flusso di lavoro ogni volta che viene caricato il ActivityExecutionContext per l’attività.

(Ereditato da CompositeActivity)
OnActivityExecutionContextUnload(IServiceProvider)
Obsoleti.

Chiamato dal motore di runtime del flusso di lavoro ogni volta che viene scaricato il ActivityExecutionContext per l’attività.

(Ereditato da CompositeActivity)
OnClosed(IServiceProvider)
Obsoleti.

Chiamato dal motore di runtime del flusso di lavoro come parte della transizione dell'attività allo stato Closed.

(Ereditato da StateActivity)
OnListChanged(ActivityCollectionChangeEventArgs)
Obsoleti.

Esegue elaborazione aggiuntiva quando la proprietà Activities viene modificata.

(Ereditato da CompositeActivity)
OnListChanging(ActivityCollectionChangeEventArgs)
Obsoleti.

Evento che si verifica prima di apportare una modifica alla proprietà Activities sottostante.

(Ereditato da CompositeActivity)
OnWorkflowChangesCompleted(ActivityExecutionContext)
Obsoleti.

Chiamato dopo le modifiche apportate alla raccolta Activities di questa istanza.

(Ereditato da CompositeActivity)
RaiseEvent(DependencyProperty, Object, EventArgs)
Obsoleti.

Genera un evento Event associato alla proprietà di dipendenza specificata.

(Ereditato da Activity)
RaiseGenericEvent<T>(DependencyProperty, Object, T)
Obsoleti.

Genera l’evento associato alla proprietà DependencyProperty a cui si fa riferimento.

(Ereditato da Activity)
RegisterForStatusChange(DependencyProperty, IActivityEventListener<ActivityExecutionStatusChangedEventArgs>)
Obsoleti.

Registra la proprietà specificata DependencyProperty relativamente all’evento di modifica dello stato.

(Ereditato da Activity)
RemoveHandler(DependencyProperty, Object)
Obsoleti.

Rimuove un elemento EventHandler dalla classe DependencyProperty associata.

(Ereditato da DependencyObject)
RemoveProperty(DependencyProperty)
Obsoleti.

Rimuove una classe DependencyProperty dalla classe DependencyObject.

(Ereditato da DependencyObject)
Save(Stream)
Obsoleti.

Scrive la classe Activity in una classe Stream per la persistenza.

(Ereditato da Activity)
Save(Stream, IFormatter)
Obsoleti.

Scrive Activity in una classe Stream per la persistenza utilizzando l’interfaccia IFormatter personalizzata fornita per la serializzazione.

(Ereditato da Activity)
SetBinding(DependencyProperty, ActivityBind)
Obsoleti.

Imposta ActivityBind per la classe DependencyProperty specificata.

(Ereditato da DependencyObject)
SetBoundValue(ActivityBind, Object)
Obsoleti.

Imposta il valore della classe ActivityBind di destinazione.

(Ereditato da DependencyObject)
SetReadOnlyPropertyValue(DependencyProperty, Object)
Obsoleti.

Imposta il valore di DependencyProperty in sola lettura.

(Ereditato da DependencyObject)
SetValue(DependencyProperty, Object)
Obsoleti.

Imposta il valore di DependencyProperty sull’oggetto.

(Ereditato da DependencyObject)
SetValueBase(DependencyProperty, Object)
Obsoleti.

Imposta il valore della classe DependencyProperty all’oggetto Object specificato, ignorando SetValue(DependencyProperty, Object).

(Ereditato da DependencyObject)
ToString()
Obsoleti.

Fornisce una stringa che rappresenta l'istanza.

(Ereditato da Activity)
TrackData(Object)
Obsoleti.

Informa l'infrastruttura di controllo di runtime sulle informazioni di rilevamento in sospeso.

(Ereditato da Activity)
TrackData(String, Object)
Obsoleti.

Informa l'infrastruttura di controllo di runtime sulle informazioni di rilevamento in sospeso.

(Ereditato da Activity)
Uninitialize(IServiceProvider)
Obsoleti.

Chiamato dal motore di runtime del flusso di lavoro quando un'attività esegue la transizione allo stato Closed dallo stato Initialized.

(Ereditato da CompositeActivity)
UnregisterForStatusChange(DependencyProperty, IActivityEventListener<ActivityExecutionStatusChangedEventArgs>)
Obsoleti.

Annulla la registrazione della proprietà specificata DependencyProperty per l’evento di modifica dello stato.

(Ereditato da Activity)

Eventi

Canceling
Obsoleti.

Si verifica quando l'esecuzione dell’attività è annullata.

(Ereditato da Activity)
Closed
Obsoleti.

Si verifica quando viene completata l'esecuzione di Activity.

(Ereditato da Activity)
Compensating
Obsoleti.

Si verifica in caso dell'esecuzione di un metodo di compensazione su Activity.

(Ereditato da Activity)
Executing
Obsoleti.

Si verifica quando viene eseguita la classe Activity.

(Ereditato da Activity)
Faulting
Obsoleti.

Si verifica quando viene generata un'eccezione durante l’esecuzione dell'istanza.

(Ereditato da Activity)
StatusChanged
Obsoleti.

Si verifica quando viene modificato lo stato ActivityExecutionStatus di una classe Activity in esecuzione.

(Ereditato da Activity)

Implementazioni dell'interfaccia esplicita

IComponent.Disposed
Obsoleti.

Rappresenta il metodo che gestisce l'evento Disposed di un componente.

(Ereditato da DependencyObject)

Si applica a

Vedi anche