Partilhar via


CallExternalMethodActivity Classe

Definição

Cuidado

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

Define uma atividade de comunicação do fluxo de trabalho que é usada para chamar um método em um serviço local. Esta atividade é usada para enviar dados do fluxo de trabalho para o host por meio do serviço local.

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
Herança
CallExternalMethodActivity
Atributos
Implementações

Exemplos

O exemplo de código a seguir mostra como usar o CallExternalMethodActivity em uma atividade personalizada para chamar um método externo. Este exemplo de código faz parte do exemplo Escutar SDK do arquivo PurchaseOrderWorkflow.Designer.cs. Para obter mais informações, consulte Exemplo de escuta.

[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

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).

Um serviço local é uma classe que implementa uma interface de serviço local (uma interface marcada com ExternalDataExchangeAttribute) e é adicionada ao ExternalDataExchangeService.

Observação

Quando o método externo é chamado, todos os parâmetros do método são clonados. Se os tipos de parâmetro implementarem ICloneable, o Clone método será chamado ou será serializado e desserializado com BinaryFormatter.

Construtores

CallExternalMethodActivity()
Obsoleto.

Inicializa uma nova instância da classe CallExternalMethodActivity.

CallExternalMethodActivity(String)
Obsoleto.

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

Campos

CorrelationTokenProperty
Obsoleto.

Representa o DependencyProperty que tem como destino a propriedade CorrelationToken.

InterfaceTypeProperty
Obsoleto.

Representa o DependencyProperty que tem como destino a propriedade InterfaceType.

MethodInvokingEvent
Obsoleto.

Representa o DependencyProperty que destina-se ao evento MethodInvoking.

MethodNameProperty
Obsoleto.

Representa o DependencyProperty que tem como destino a propriedade MethodName.

ParameterBindingsProperty
Obsoleto.

Representa o DependencyProperty que tem como destino a propriedade ParameterBindings.

Propriedades

CorrelationToken
Obsoleto.

Obtém ou define o CorrelationToken para o método externo.

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)
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)
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)
InterfaceType
Obsoleto.

Obtém ou define um método externo que declara a interface que tem o ExternalDataExchangeAttribute.

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)
MethodName
Obsoleto.

Obtém ou define o nome do método a ser chamado no serviço local registrado com o ExternalDataExchangeService.

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)
ParameterBindings
Obsoleto.

Obtém a coleção de parâmetros associáveis como encontrados na lista de parâmetros formais do método externo.

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)
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)
Cancel(ActivityExecutionContext)
Obsoleto.

Chamado pelo runtime de fluxo de trabalho para cancelar a execução de uma atividade que está sendo executada no momento.

(Herdado de Activity)
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.

Libera os recursos não gerenciados usados e opcionalmente os gerenciados usados pelo DependencyObject.

(Herdado de DependencyObject)
Equals(Object)
Obsoleto.

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
Execute(ActivityExecutionContext)
Obsoleto.

Tenta executar o CallExternalMethodActivity com o ActivityExecutionContext especificado.

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)
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 Activity)
Initialize(IServiceProvider)
Obsoleto.

Chamado pelo runtime de fluxo de trabalho para inicializar uma atividade durante a construção de uma nova instância de fluxo de trabalho. Este método é chamado durante a construção de um ActivityExecutionContext dinâmico.

(Herdado de Activity)
InitializeProperties()
Obsoleto.

Executa a inicialização nas propriedades de dependência.

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)
OnActivityExecutionContextLoad(IServiceProvider)
Obsoleto.

Chamado pelo runtime de fluxo de trabalho sempre que um ActivityExecutionContext é carregado. Por exemplo, este método é chamado durante a criação de um ActivityExecutionContext, bem como toda vez que o ActivityExecutionContext é reencarnado quando uma instância de fluxo de trabalho é carregada do armazenamento persistente.

(Herdado de Activity)
OnActivityExecutionContextUnload(IServiceProvider)
Obsoleto.

Chamado pelo runtime de fluxo de trabalho sempre que um ActivityExecutionContext é descarregado. Por exemplo, este método é chamado durante a conclusão de um ActivityExecutionContext, bem como toda vez que ActivityExecutionContext é descarregado quando uma instância de fluxo de trabalho é persistida.

(Herdado de Activity)
OnClosed(IServiceProvider)
Obsoleto.

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

(Herdado de Activity)
OnMethodInvoked(EventArgs)
Obsoleto.

Fornece um gancho para classes derivadas extraírem e retornarem valores do ParameterBindings. Esse método é chamado logo após a execução do método externo.

OnMethodInvoking(EventArgs)
Obsoleto.

Fornece um gancho para classes derivadas definirem ParameterBindings. Esse método é chamado logo antes da execução do método externo.

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.

Quando substituído em uma classe derivada, fornece o cancelamento de inicialização por um provedor de serviço para a atividade.

(Herdado de Activity)
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)
MethodInvoking
Obsoleto.

Ocorre antes da chamada do método.

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)
IDynamicPropertyTypeProvider.GetAccessType(IServiceProvider, String)
Obsoleto.

Retorna o tipo de acesso para a propriedade especificada.

IDynamicPropertyTypeProvider.GetPropertyType(IServiceProvider, String)
Obsoleto.

Retorna o Type do da propriedade especificada.

Aplica-se a

Confira também