Compartilhar via


DynamicActivity Classe

Definição

Fornece um modelo de objeto que permite construir dinamicamente atividades que fazem interface com o designer do WF e o runtime usando ICustomTypeDescriptor.

public ref class DynamicActivity sealed : System::Activities::Activity, System::ComponentModel::ICustomTypeDescriptor
[System.Windows.Markup.ContentProperty("Implementation")]
public sealed class DynamicActivity : System.Activities.Activity, System.ComponentModel.ICustomTypeDescriptor
[<System.Windows.Markup.ContentProperty("Implementation")>]
type DynamicActivity = class
    inherit Activity
    interface ICustomTypeDescriptor
Public NotInheritable Class DynamicActivity
Inherits Activity
Implements ICustomTypeDescriptor
Herança
DynamicActivity
Atributos
Implementações

Exemplos

O exemplo a seguir mostra como criar um DynamicActivity.

// Variables
var iterationVariable = new DelegateInArgument<int>() { Name = "iterationVariable" };
var accumulator = new Variable<int>() { Default = 0, Name = "accumulator" };

// Define the Input and Output arguments that the DynamicActivity binds to
var numbers = new InArgument<List<int>>();
var average = new OutArgument<double>();

var result = new Variable<double>() { Name = "result" };

return new DynamicActivity()
{
    DisplayName = "Find average",
    Properties =
    {
        // Input argument
        new DynamicActivityProperty
        {
            Name = "Numbers",
            Type = typeof(InArgument<List<int>>),
            Value = numbers
        },
        // Output argument
        new DynamicActivityProperty
        {
            Name = "Average",
            Type = typeof(OutArgument<double>),
            Value = average
        }
    },
    Implementation = () =>
        new Sequence
        {
            Variables = { result, accumulator },
            Activities =
            {
                new ForEach<int>
                {
                    Values =  new ArgumentValue<IEnumerable<int>> { ArgumentName = "Numbers" },
                    Body = new ActivityAction<int>
                    {
                        Argument = iterationVariable,
                        Handler = new Assign<int>
                        {
                            To = accumulator,
                            Value = new InArgument<int>(env => iterationVariable.Get(env) +  accumulator.Get(env))
                        }
                    }
                },

                // Calculate the average and assign to the output argument.
                new Assign<double>
                {
                    To = new ArgumentReference<double> { ArgumentName = "Average" },
                    Value = new InArgument<double>(env => accumulator.Get(env) / numbers.Get(env).Count<int>())
                },
            }
        }

Construtores

DynamicActivity()

Cria uma nova instância da classe DynamicActivity.

Propriedades

Attributes

Obtém a coleção de atributos da atividade gerada dinamicamente.

CacheId

Obtém um identificador do cache que é exclusivo no escopo da definição do fluxo de trabalho.

(Herdado de Activity)
Constraints

Retorna uma coleção de atividades Constraint que são configuradas para fornecer validação para a DynamicActivity.

DisplayName

Obtém ou define um nome amigável opcional que é usado para depuração, validação, manipulação de exceções e acompanhamento.

(Herdado de Activity)
Id

Obtém um identificador que é exclusivo no escopo da definição do fluxo de trabalho.

(Herdado de Activity)
Implementation

Obtém ou define a lógica de execução da atividade.

ImplementationVersion

Obtém ou define a versão de implementação da atividade.

ImplementationVersion

Obtém ou define a versão de implementação usada.

(Herdado de Activity)
Name

O nome a ser exibido para a atividade no designer de fluxo de trabalho.

Properties

Obtém a coleção de propriedades que são mapeadas para os argumentos da atividade gerada dinamicamente.

Métodos

CacheMetadata(ActivityMetadata)

Cria e valida uma descrição dos argumentos, das variáveis, das atividades filho e dos representantes da atividade.

(Herdado de Activity)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

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

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Gera um evento ao criar o mapa de atualização dinâmica.

(Herdado de Activity)
ShouldSerializeDisplayName()

Indica se a propriedade DisplayName deve ser serializada.

(Herdado de Activity)
ToString()

Retorna um String que contém o Id e DisplayName do Activity.

(Herdado de Activity)

Implantações explícitas de interface

ICustomTypeDescriptor.GetAttributes()

Retorna uma coleção de atributos da atividade dinâmica.

ICustomTypeDescriptor.GetClassName()

Retorna o nome de classe da atividade dinâmica.

ICustomTypeDescriptor.GetComponentName()

Retorna o nome do componente da atividade dinâmica.

ICustomTypeDescriptor.GetConverter()

Retorna um conversor de tipo da atividade dinâmica.

ICustomTypeDescriptor.GetDefaultEvent()

Retorna o evento padrão da atividade dinâmica.

ICustomTypeDescriptor.GetDefaultProperty()

Retorna a propriedade padrão da atividade dinâmica.

ICustomTypeDescriptor.GetEditor(Type)

Retorna um editor com o tipo base especificado.

ICustomTypeDescriptor.GetEvents()

Retorna a coleção de eventos da atividade dinâmica.

ICustomTypeDescriptor.GetEvents(Attribute[])

Retorna a coleção de eventos da atividade dinâmica usando uma matriz de atributos especificada como um filtro.

ICustomTypeDescriptor.GetProperties()

Retorna a coleção de propriedades da atividade dinâmica.

ICustomTypeDescriptor.GetProperties(Attribute[])

Retorna a coleção de propriedades de atividade dinâmica usando uma matriz de atributos especificada como um filtro.

ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Retorna esta instância da classe DynamicActivity.

Aplica-se a