Поделиться через


CallExternalMethodActivity Класс

Определение

Внимание!

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

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

public ref class CallExternalMethodActivity : System::Workflow::ComponentModel::Activity, System::Workflow::ComponentModel::IDynamicPropertyTypeProvider
[System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.CallExternalMethodActivityValidator))]
public class CallExternalMethodActivity : System.Workflow.ComponentModel.Activity, System.Workflow.ComponentModel.IDynamicPropertyTypeProvider
[System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.CallExternalMethodActivityValidator))]
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public class CallExternalMethodActivity : System.Workflow.ComponentModel.Activity, System.Workflow.ComponentModel.IDynamicPropertyTypeProvider
[<System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.CallExternalMethodActivityValidator))>]
type CallExternalMethodActivity = class
    inherit Activity
    interface IDynamicPropertyTypeProvider
[<System.Workflow.ComponentModel.Compiler.ActivityValidator(typeof(System.Workflow.Activities.CallExternalMethodActivityValidator))>]
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type CallExternalMethodActivity = class
    inherit Activity
    interface IDynamicPropertyTypeProvider
Public Class CallExternalMethodActivity
Inherits Activity
Implements IDynamicPropertyTypeProvider
Наследование
CallExternalMethodActivity
Атрибуты
Реализации

Примеры

В следующем примере кода показано использование CallExternalMethodActivity в пользовательском действии для вызова внешнего метода. Данный пример кода является частью образца пакета SDK «Listen» из файла PurchaseOrderWorkflow.Designer.cs. Дополнительные сведения см. в разделе Пример прослушивания.

[System.Diagnostics.DebuggerNonUserCode()]
private void InitializeComponent()
{
    this.CanModifyActivities = true;
    this.Timeout = new System.Workflow.Activities.CodeActivity();
    this.Delay = new System.Workflow.Activities.DelayActivity();
    this.RejectPO = new System.Workflow.Activities.HandleExternalEventActivity();
    this.ApprovePO = new System.Workflow.Activities.HandleExternalEventActivity();
    this.OnTimeoutEventDriven = new System.Workflow.Activities.EventDrivenActivity();
    this.OnOrderRejectedEventDriven = new System.Workflow.Activities.EventDrivenActivity();
    this.OnOrderApprovedEventDriven = new System.Workflow.Activities.EventDrivenActivity();
    this.POStatusListen = new System.Workflow.Activities.ListenActivity();
    this.CreatePO = new System.Workflow.Activities.CallExternalMethodActivity();
    //
    // Timeout
    //
    this.Timeout.Name = "Timeout";
    this.Timeout.ExecuteCode += new System.EventHandler(this.OnTimeout);
    //
    // Delay
    //
    this.Delay.Name = "Delay";
    this.Delay.TimeoutDuration = System.TimeSpan.Parse("00:00:05");
    //
    // RejectPO
    //
    this.RejectPO.EventName = "OrderRejected";
    this.RejectPO.InterfaceType = typeof(IOrderService);
    this.RejectPO.Name = "RejectPO";
    this.RejectPO.Invoked += new System.EventHandler<System.Workflow.Activities.ExternalDataEventArgs>(this.OnRejectPO);
    //
    // ApprovePO
    //
    this.ApprovePO.EventName = "OrderApproved";
    this.ApprovePO.InterfaceType = typeof(IOrderService);
    this.ApprovePO.Name = "ApprovePO";
    this.ApprovePO.Invoked += new System.EventHandler<System.Workflow.Activities.ExternalDataEventArgs>(this.OnApprovePO);
    //
    // OnTimeoutEventDriven
    //
    this.OnTimeoutEventDriven.Activities.Add(this.Delay);
    this.OnTimeoutEventDriven.Activities.Add(this.Timeout);
    this.OnTimeoutEventDriven.Name = "OnTimeoutEventDriven";
    //
    // OnOrderRejectedEventDriven
    //
    this.OnOrderRejectedEventDriven.Activities.Add(this.RejectPO);
    this.OnOrderRejectedEventDriven.Name = "OnOrderRejectedEventDriven";
    //
    // OnOrderApprovedEventDriven
    //
    this.OnOrderApprovedEventDriven.Activities.Add(this.ApprovePO);
    this.OnOrderApprovedEventDriven.Name = "OnOrderApprovedEventDriven";
    //
    // POStatusListen
    //
    this.POStatusListen.Activities.Add(this.OnOrderApprovedEventDriven);
    this.POStatusListen.Activities.Add(this.OnOrderRejectedEventDriven);
    this.POStatusListen.Activities.Add(this.OnTimeoutEventDriven);
    this.POStatusListen.Name = "POStatusListen";
    //
    // CreatePO
    //
    this.CreatePO.InterfaceType = typeof(IOrderService);
    this.CreatePO.MethodName = "CreateOrder";
    this.CreatePO.Name = "CreatePO";
    this.CreatePO.MethodInvoking += new System.EventHandler(this.OnBeforeCreateOrder);
    //
    // PurchaseOrderWorkflow
    //
    this.Activities.Add(this.CreatePO);
    this.Activities.Add(this.POStatusListen);
    this.Name = "PurchaseOrderWorkflow";
    this.CanModifyActivities = false;
}
    <System.Diagnostics.DebuggerNonUserCode()> _
Private Sub InitializeComponent()
        Me.CanModifyActivities = True
        Me.CreatePO = New System.Workflow.Activities.CallExternalMethodActivity
        Me.POStatusListen = New System.Workflow.Activities.ListenActivity
        Me.OnOrderApprovedEventDriven = New System.Workflow.Activities.EventDrivenActivity
        Me.OnOrderRejectedEventDriven = New System.Workflow.Activities.EventDrivenActivity
        Me.OnTimeoutEventDriven = New System.Workflow.Activities.EventDrivenActivity
        Me.ApprovePO = New System.Workflow.Activities.HandleExternalEventActivity
        Me.RejectPO = New System.Workflow.Activities.HandleExternalEventActivity
        Me.Delay = New System.Workflow.Activities.DelayActivity
        Me.Timeout = New System.Workflow.Activities.CodeActivity
        '
        'Timeout
        '
        Me.Timeout.Name = "Timeout"
        AddHandler Me.Timeout.ExecuteCode, AddressOf Me.OnTimeout
        '
        'Delay
        '
        Me.Delay.Name = "Delay"
        Me.Delay.TimeoutDuration = System.TimeSpan.Parse("00:00:05")
        '
        'RejectPO
        '
        Me.RejectPO.EventName = "OrderRejected"
        Me.RejectPO.InterfaceType = GetType(IOrderService)
        Me.RejectPO.Name = "RejectPO"
        AddHandler Me.RejectPO.Invoked, AddressOf Me.OnRejectPO
        ' 
        ' ApprovePO
        ' 
        Me.ApprovePO.EventName = "OrderApproved"
        Me.ApprovePO.InterfaceType = GetType(IOrderService)
        Me.ApprovePO.Name = "ApprovePO"
        AddHandler Me.ApprovePO.Invoked, AddressOf Me.OnApprovePO
        ' 
        ' OnTimeoutEventDriven
        ' 
        Me.OnTimeoutEventDriven.Activities.Add(Me.Delay)
        Me.OnTimeoutEventDriven.Activities.Add(Me.Timeout)
        Me.OnTimeoutEventDriven.Name = "OnTimeoutEventDriven"
        ' 
        ' OnOrderRejectedEventDriven
        ' 
        Me.OnOrderRejectedEventDriven.Activities.Add(Me.RejectPO)
        Me.OnOrderRejectedEventDriven.Name = "OnOrderRejectedEventDriven"
        ' 
        ' OnOrderApprovedEventDriven
        ' 
        Me.OnOrderApprovedEventDriven.Activities.Add(Me.ApprovePO)
        Me.OnOrderApprovedEventDriven.Name = "OnOrderApprovedEventDriven"
        ' 
        ' POStatusListen
        ' 
        Me.POStatusListen.Activities.Add(Me.OnOrderApprovedEventDriven)
        Me.POStatusListen.Activities.Add(Me.OnOrderRejectedEventDriven)
        Me.POStatusListen.Activities.Add(Me.OnTimeoutEventDriven)
        Me.POStatusListen.Name = "POStatusListen"
        ' 
        ' CreatePO
        ' 
        Me.CreatePO.InterfaceType = GetType(IOrderService)
        Me.CreatePO.MethodName = "CreateOrder"
        Me.CreatePO.Name = "CreatePO"
        AddHandler Me.CreatePO.MethodInvoking, AddressOf Me.OnBeforeCreateOrder
        ' 
        ' PurchaseOrderWorkflow
        ' 
        Me.Activities.Add(Me.CreatePO)
        Me.Activities.Add(Me.POStatusListen)
        Me.Name = "PurchaseOrderWorkflow"
        Me.CanModifyActivities = False

    End Sub

Комментарии

Примечание

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

Локальная служба — это класс, реализующий интерфейс локальной службы (отмеченный атрибутом ExternalDataExchangeAttribute). Эта служба добавляется в службу ExternalDataExchangeService.

Примечание

При вызове внешнего метода все параметры этого метода клонируются. Если типы параметров реализуют ICloneable, Clone вызывается метод или они сериализуются и десериализуются с помощью BinaryFormatter.

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

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

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

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

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

Поля

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

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

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

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

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

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

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

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

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

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

Свойства

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

Возвращает или задает CorrelationToken для внешнего метода.

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

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

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

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

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

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

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

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

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

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

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

Возвращает или задает объявляющий интерфейс внешнего метода, имеющий атрибут ExternalDataExchangeAttribute.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Методы

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

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

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

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

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

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

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

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

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

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

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

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

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

Пытается выполнить действие CallExternalMethodActivity с заданным контекстом ActivityExecutionContext.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Выполняет инициализацию свойств зависимостей.

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)
OnActivityExecutionContextLoad(IServiceProvider)
Устаревшие..

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

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

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

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

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

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

Предоставляет обработчик для производных классов для извлечения и возврата значений из свойства ParameterBindings. Этот метод вызывается после выполнения внешнего метода.

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

Предоставляет обработчик для производных классов для задания свойства ParameterBindings. Этот метод вызывается перед выполнением внешнего метода.

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)
Устаревшие..

При переопределении в производном классе обеспечивает деинициализацию поставщиком служб для действия.

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

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

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

События

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

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

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

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

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

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

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

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

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

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

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

Происходит перед вызовом метода.

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

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

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

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

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

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

(Унаследовано от DependencyObject)
IDynamicPropertyTypeProvider.GetAccessType(IServiceProvider, String)
Устаревшие..

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

IDynamicPropertyTypeProvider.GetPropertyType(IServiceProvider, String)
Устаревшие..

Возвращает тип Type заданного свойства.

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

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