StateMachineWorkflowActivity Класс

Определение

Внимание!

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

Служит в качестве корневого контейнера для рабочих процессов конечного автомата. Содержит действия и состояния, управляемые событиями.

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
Наследование
Атрибуты

Примеры

В следующем примере кода показано создание нового экземпляра класса StateMachineWorkflowActivity и его использование для реализации базового конечного автомата для переходов между тремя состояниями. Этот пример кода является частью образца SimpleStateMachineWorkflow из пакета SDK (файл StateMachineWorkflow.cs). Дополнительные сведения см. в разделе Простой конечный автомат.

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"

Комментарии

Примечание

В этом материале обсуждаются устаревшие типы и пространства имен. Дополнительные сведения см. в статье о нерекомендуемых типах в Windows Workflow Foundation 4.5.

StateMachineWorkflowActivity — это контейнер действий, используемый для создания рабочих процессов, соответствующих модели конечного автомата.

StateMachineWorkflowActivity — это CompositeActivity, т. е. StateMachineWorkflowActivity может содержать другие действия. StateMachineWorkflowActivity и EventDrivenActivity — это единственные разрешенные дочерние действия для действия StateMachineWorkflowActivity. EventDrivenActivity — это допустимые действия, поскольку само корневое действие ведет себя подобно состоянию. Следовательно, можно иметь действия EventDrivenActivity на корневом уровне, которые используются всеми действиями, связанными с состояниями, в StateMachineWorkflowActivity. EventDrivenActivity на этом уровне обеспечивают глобальный механизм для обработки событий рабочих процессов и автоматизируют переходы между состояниями. StateActivity обеспечивают механизм для определения различных стадий в модели.

StateMachineWorkflowActivity имеет свойства, необходимые для выполнения рабочего процесса конечного автомата. В частности, StateMachineWorkflowActivity имеет два важных свойства: InitialStateNameProperty и CompletedStateNameProperty.

Свойство InitialStateNameProperty конечного автомата — это состояние, в котором находится конечный автомат при создании экземпляра конечного автомата. Свойство InitialStateNameProperty является обязательным и должно быть обеспечено при создании StateMachineWorkflowActivity. Свойство InitialStateNameProperty конечного автомата подобно любому другому связанному с состоянием действию, которое содержится в конечном автомате. Действие, связанное с состоянием, может быть прямым дочерним элементом корневого действия StateMachineWorkflowActivity, и StateMachineWorkflowActivity может иметь только одно свойство InitialStateNameProperty.

Свойство CompletedStateNameProperty действия StateMachineWorkflowActivity — это действие StateActivity, которое определено в качестве конечного состояния действия StateMachineWorkflowActivity. При переходе в состояние CompletedStateNameProperty выполнение рабочего процесса завершается. Свойство CompletedStateNameProperty является необязательным. Это означает, что можно иметь незавершенное действие StateMachineWorkflowActivity. Это не означает, что рабочий процесс конечного автомата всегда активен в памяти. Действие StateMachineWorkflowActivity может быть незагруженным, так как оно ожидает события.

Действия StateMachineWorkflowActivity, которые никогда не завершаются, особенно полезны при обработке долго выполняющихся бизнес-транзакций, например, в случае заказа на покупку, принятого поставщиком. Факт, что заказ на покупку был выполнен, не означает, что его обработка завершилась. Товары, являющиеся частью заказа на покупку, могут быть возвращены, или заказ на покупку может быть изменен и содержать дополнительные элементы, добавленные после его выполнения. Иногда может требоваться сохранять записи заказа на покупку в течение длительного периода времени по юридическим причинам или для других целей. Факт, что рабочий процесс не завершается, просто означает, что он остается в незагруженном состоянии. Могут существовать причины для отмены рабочих процессов. В этом случае по истечении заданного периода времени экземпляр рабочего процесса может быть принудительно закрыт.

Конструкторы

StateMachineWorkflowActivity()
Устаревшие..

Инициализирует новый экземпляр класса StateMachineWorkflowActivity.

StateMachineWorkflowActivity(String)
Устаревшие..

Инициализирует новый экземпляр класса StateMachineWorkflowActivity, используя имя действия.

Поля

CompletedStateNameProperty
Устаревшие..

Представляет объект DependencyObject, который нацелен на свойство CompletedStateName.

InitialStateNameProperty
Устаревшие..

Представляет объект DependencyObject, который нацелен на свойство InitialStateName.

SetStateQueueName
Устаревшие..

Имя очереди WorkflowQueue, используемой для изменения состояния StateMachineWorkflowActivity. Это поле является константой.

StateChangeTrackingDataKey
Устаревшие..

Содержит строковое значение ключа данных отслеживания изменений: "StateActivity.StateChange". Это поле является константой.

(Унаследовано от StateActivity)

Свойства

Activities
Устаревшие..

Возвращает объект, представляющий коллекцию ActivityCollection дочерних действий.

(Унаследовано от CompositeActivity)
CanModifyActivities
Устаревшие..

Возвращает или задает значение, которое указывает, можно ли изменять отдельные действия в свойстве Activities.

(Унаследовано от CompositeActivity)
CompletedStateName
Устаревшие..

Возвращает или задает конечное действие StateActivity рабочего процесса.

CurrentStateName
Устаревшие..

Возвращает имя выполняющегося в данный момент действия StateActivity.

Description
Устаревшие..

Возвращает или задает пользовательское описание объекта Activity.

(Унаследовано от Activity)
DesignMode
Устаревшие..

Возвращает значение, показывающее, в каком режиме находится данный экземпляр — режиме конструктора или режиме выполнения.

(Унаследовано от DependencyObject)
DynamicUpdateCondition
Устаревшие..

Возвращает или задает условие ActivityCondition, определяющее возможность выполнения динамических обновлений в рабочем процессе, когда он переопределен в производном классе.

Enabled
Устаревшие..

Возвращает или задает значение, указывающее, разрешены ли для этого экземпляра выполнение и проверка.

(Унаследовано от Activity)
EnabledActivities
Устаревшие..

Возвращает доступную только для чтения коллекцию, которая представляет подмножество включенных свойств Activities.

(Унаследовано от CompositeActivity)
ExecutionResult
Устаревшие..

Возвращает результат ActivityExecutionResult последней попытки запуска экземпляра.

(Унаследовано от Activity)
ExecutionStatus
Устаревшие..

Возвращает текущее состояние ActivityExecutionStatus экземпляра.

(Унаследовано от Activity)
InitialStateName
Устаревшие..

Возвращает или задает действие StateActivity, в котором находится действие StateMachineWorkflowActivity при создании экземпляра конечного автомата.

IsDynamicActivity
Устаревшие..

Возвращает сведения о том, выполняется ли действие в рамках ActivityExecutionContext по умолчанию для экземпляра рабочего процесса.

(Унаследовано от Activity)
Name
Устаревшие..

Возвращает или задает имя экземпляра. Имя должно соответствовать стандартным правилам именования переменных языка программирования, использованного в проекте.

(Унаследовано от Activity)
Parent
Устаревшие..

Возвращает составное действие CompositeActivity, в котором содержится данный объект Activity.

(Унаследовано от Activity)
ParentDependencyObject
Устаревшие..

Возвращает родительский объект DependencyObject в графе DependencyObject.

(Унаследовано от DependencyObject)
PreviousStateName
Устаревшие..

Возвращает имя ранее выполненного действия StateActivity.

QualifiedName
Устаревшие..

Возвращает полное имя действия. Полные имена действий всегда уникальны в рамках экземпляра рабочего процесса.

(Унаследовано от Activity)
Site
Устаревшие..

Возвращает или задает ссылку на компонент Site объекта DependencyObject.

(Унаследовано от DependencyObject)
UserData
Устаревшие..

Возвращает коллекцию IDictionary, которая связывает пользовательские данные с этим экземпляром класса.

(Унаследовано от DependencyObject)
WorkflowInstanceId
Устаревшие..

Возвращает идентификатор Guid, связанный с экземпляром.

(Унаследовано от Activity)

Методы

AddHandler(DependencyProperty, Object)
Устаревшие..

Добавляет обработчик для события DependencyObject.

(Унаследовано от DependencyObject)
ApplyWorkflowChanges(WorkflowChanges)
Устаревшие..

Применяет манифест WorkflowChanges в параметре данного экземпляра.

(Унаследовано от CompositeActivity)
Cancel(ActivityExecutionContext)
Устаревшие..

Отменяет выполнение действия StateActivity.

(Унаследовано от StateActivity)
Clone()
Устаревшие..

Создает глубокую копию объекта Activity.

(Унаследовано от Activity)
Dispose()
Устаревшие..

Освобождает все ресурсы, используемые объектом DependencyObject.

(Унаследовано от DependencyObject)
Dispose(Boolean)
Устаревшие..

Вызывает метод Dispose(Boolean) для экземпляра и (необязательно) вызывает метод Dispose() для всех дочерних действий экземпляра.

(Унаследовано от CompositeActivity)
Equals(Object)
Устаревшие..

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
Execute(ActivityExecutionContext)
Устаревшие..

Выполняет действие StateActivity.

(Унаследовано от StateActivity)
GetActivityByName(String)
Устаревшие..

Возвращает экземпляр Activity, имя которого запрошено, из набора всех действий, выполняемых в рамках корневого действия экземпляра, то есть в рамках рабочего процесса.

(Унаследовано от Activity)
GetActivityByName(String, Boolean)
Устаревшие..

Возвращает экземпляр Activity, имя которого запрошено, из набора всех действий, выполняемых в рамках корневого действия Activity экземпляра, если второй параметр имеет значение false, или в рамках текущего действия Activity, если второй параметр имеет значение true.

(Унаследовано от Activity)
GetBinding(DependencyProperty)
Устаревшие..

Предоставляет доступ к объекту ActivityBind, связанному с конкретным объектом DependencyProperty.

(Унаследовано от DependencyObject)
GetBoundValue(ActivityBind, Type)
Устаревшие..

Извлекает объект Object, который является субъектом ActivityBind.

(Унаследовано от DependencyObject)
GetDynamicActivities(Activity)
Устаревшие..

Возвращает массив, который содержит все выполняющиеся в настоящий момент экземпляры заданного действия.

(Унаследовано от CompositeActivity)
GetDynamicActivity(String)
Устаревшие..

Возвращает выполняющийся экземпляр действия Activity, соответствующий указанному имени дочернего действия.

(Унаследовано от StateActivity)
GetHashCode()
Устаревшие..

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetInvocationList<T>(DependencyProperty)
Устаревшие..

Возвращает массив, содержащий делегаты для заданного свойства DependencyProperty.

(Унаследовано от DependencyObject)
GetType()
Устаревшие..

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
GetValue(DependencyProperty)
Устаревшие..

Предоставляет доступ к значению заданного свойства DependencyProperty.

(Унаследовано от DependencyObject)
GetValueBase(DependencyProperty)
Устаревшие..

Предоставляет доступ к связанному объекту DependencyProperty и обходит переопределение метода GetValue(DependencyProperty).

(Унаследовано от DependencyObject)
HandleFault(ActivityExecutionContext, Exception)
Устаревшие..

Вызывается при возникновении исключения в контексте выполнения данного экземпляра.

(Унаследовано от CompositeActivity)
Initialize(IServiceProvider)
Устаревшие..

Инициализирует класс StateActivity, используя поставщик службы.

(Унаследовано от StateActivity)
InitializeProperties()
Устаревшие..

При переопределении в производном классе выполняет инициализацию свойств зависимостей.

(Унаследовано от DependencyObject)
Invoke<T>(EventHandler<T>, T)
Устаревшие..

Подписывает объект EventHandler и вызывает делегат.

(Унаследовано от Activity)
Invoke<T>(IActivityEventListener<T>, T)
Устаревшие..

Подписывает объект IActivityEventListener<T> и вызывает делегат.

(Унаследовано от Activity)
IsBindingSet(DependencyProperty)
Устаревшие..

Указывает, задано ли значение DependencyProperty как привязка. См. раздел SetBinding(DependencyProperty, ActivityBind).

(Унаследовано от DependencyObject)
MemberwiseClone()
Устаревшие..

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
MetaEquals(DependencyObject)
Устаревшие..

Определяет, совпадают ли свойства metaproperties этого объекта DependencyObject со свойствами metaproperties параметризованного объекта DependencyObject.

(Унаследовано от DependencyObject)
OnActivityChangeAdd(ActivityExecutionContext, Activity)
Устаревшие..

Определяет, является ли добавляемое действие действием EventDrivenActivity; если является, проверяет, требуется ли подписка на новое добавляемое действие, управляемое событиями.

(Унаследовано от StateActivity)
OnActivityChangeRemove(ActivityExecutionContext, Activity)
Устаревшие..

Вызывается при удалении действия.

(Унаследовано от CompositeActivity)
OnActivityExecutionContextLoad(IServiceProvider)
Устаревшие..

Вызывается механизмом среды выполнения рабочих процессов каждый раз при загрузке контекста ActivityExecutionContext для данного действия.

(Унаследовано от CompositeActivity)
OnActivityExecutionContextUnload(IServiceProvider)
Устаревшие..

Вызывается механизмом среды выполнения рабочих процессов каждый раз при выгрузке контекста ActivityExecutionContext для данного действия.

(Унаследовано от CompositeActivity)
OnClosed(IServiceProvider)
Устаревшие..

Вызывается механизмом среды выполнения рабочих процессов и является частью перехода действия в состояние Closed.

(Унаследовано от StateActivity)
OnListChanged(ActivityCollectionChangeEventArgs)
Устаревшие..

Выполняет дополнительную обработку при изменении свойства Activities.

(Унаследовано от CompositeActivity)
OnListChanging(ActivityCollectionChangeEventArgs)
Устаревшие..

Событие, которое происходит перед изменением соответствующего свойства Activities.

(Унаследовано от CompositeActivity)
OnWorkflowChangesCompleted(ActivityExecutionContext)
Устаревшие..

Вызывается после внесения изменений в коллекцию Activities этого экземпляра.

(Унаследовано от CompositeActivity)
RaiseEvent(DependencyProperty, Object, EventArgs)
Устаревшие..

Вызывает событие Event, связанное с заданным свойством зависимостей.

(Унаследовано от Activity)
RaiseGenericEvent<T>(DependencyProperty, Object, T)
Устаревшие..

Порождает событие, связанное с объектом DependencyProperty, на который существует ссылка.

(Унаследовано от Activity)
RegisterForStatusChange(DependencyProperty, IActivityEventListener<ActivityExecutionStatusChangedEventArgs>)
Устаревшие..

Регистрирует заданный объект DependencyProperty для события изменения состояния.

(Унаследовано от Activity)
RemoveHandler(DependencyProperty, Object)
Устаревшие..

Удаляет EventHandler из связанного объекта DependencyProperty.

(Унаследовано от DependencyObject)
RemoveProperty(DependencyProperty)
Устаревшие..

Удаляет объект DependencyProperty из объекта DependencyObject.

(Унаследовано от DependencyObject)
Save(Stream)
Устаревшие..

Записывает действие Activity в объект Stream для сохранения.

(Унаследовано от Activity)
Save(Stream, IFormatter)
Устаревшие..

Записывает действие Activity в объект Stream для сохранения, применяя пользовательский интерфейс IFormatter для сериализации.

(Унаследовано от Activity)
SetBinding(DependencyProperty, ActivityBind)
Устаревшие..

Задает объект ActivityBind для указанного объекта DependencyProperty.

(Унаследовано от DependencyObject)
SetBoundValue(ActivityBind, Object)
Устаревшие..

Задает значение целевого объекта ActivityBind.

(Унаследовано от DependencyObject)
SetReadOnlyPropertyValue(DependencyProperty, Object)
Устаревшие..

Задает значение свойства DependencyProperty только для чтения.

(Унаследовано от DependencyObject)
SetValue(DependencyProperty, Object)
Устаревшие..

Присваивает значение DependencyProperty объекту.

(Унаследовано от DependencyObject)
SetValueBase(DependencyProperty, Object)
Устаревшие..

Задает значение свойства DependencyProperty равным указанному объекту Object в обход метода SetValue(DependencyProperty, Object).

(Унаследовано от DependencyObject)
ToString()
Устаревшие..

Возвращает строку, представляющую данный экземпляр.

(Унаследовано от Activity)
TrackData(Object)
Устаревшие..

Передает в инфраструктуру отслеживания среды выполнения отложенные сведения об отслеживании.

(Унаследовано от Activity)
TrackData(String, Object)
Устаревшие..

Передает в инфраструктуру отслеживания среды выполнения отложенные сведения об отслеживании.

(Унаследовано от Activity)
Uninitialize(IServiceProvider)
Устаревшие..

Вызывается механизмом среды выполнения рабочих процессов, когда действие переходит в состояние Closed из состояния Initialized.

(Унаследовано от CompositeActivity)
UnregisterForStatusChange(DependencyProperty, IActivityEventListener<ActivityExecutionStatusChangedEventArgs>)
Устаревшие..

Отменяет регистрацию заданного объекта DependencyProperty для события изменения состояния.

(Унаследовано от Activity)

События

Canceling
Устаревшие..

Происходит при отмене выполнения действия.

(Унаследовано от Activity)
Closed
Устаревшие..

Происходит при завершении выполнения действия Activity.

(Унаследовано от Activity)
Compensating
Устаревшие..

Происходит при выполнении метода компенсации для действия Activity.

(Унаследовано от Activity)
Executing
Устаревшие..

Происходит при выполнении действия Activity.

(Унаследовано от Activity)
Faulting
Устаревшие..

Происходит при возникновении исключения во время выполнения экземпляра.

(Унаследовано от Activity)
StatusChanged
Устаревшие..

Происходит при изменении состояния ActivityExecutionStatus действия Activity.

(Унаследовано от Activity)

Явные реализации интерфейса

IComponent.Disposed
Устаревшие..

Представляет метод, обрабатывающий событие Disposed компонента.

(Унаследовано от DependencyObject)

Применяется к

См. также раздел