DynamicActivity Класс

Определение

Предоставляет объектную модель, которая позволяет динамически создавать действия с помощью ICustomTypeDescriptorконструктора WF и среды выполнения.

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

Примеры

В следующем примере показано, как создать 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>())
                },
            }
        }

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

Имя Описание
DynamicActivity()

Создает новый экземпляр класса DynamicActivity.

Свойства

Имя Описание
Attributes

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

CacheId

Возвращает идентификатор кэша, уникального в области определения рабочего процесса.

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

Возвращает коллекцию действий, настроенных Constraint для проверки.DynamicActivity

DisplayName

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

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

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

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

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

ImplementationVersion

Возвращает или задает версию реализации действия.

Name

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

Properties

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

Методы

Имя Описание
CacheMetadata(ActivityMetadata)

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

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

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

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

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

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

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

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

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

(Унаследовано от Object)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

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

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

Указывает, следует ли DisplayName сериализовать свойство.

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

Возвращает объект String , содержащий Id и DisplayName из нее Activity.

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

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

Имя Описание
ICustomTypeDescriptor.GetAttributes()

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

ICustomTypeDescriptor.GetClassName()

Возвращает имя класса динамического действия.

ICustomTypeDescriptor.GetComponentName()

Возвращает имя компонента динамического действия.

ICustomTypeDescriptor.GetConverter()

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

ICustomTypeDescriptor.GetDefaultEvent()

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

ICustomTypeDescriptor.GetDefaultProperty()

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

ICustomTypeDescriptor.GetEditor(Type)

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

ICustomTypeDescriptor.GetEvents()

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

ICustomTypeDescriptor.GetEvents(Attribute[])

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

ICustomTypeDescriptor.GetProperties()

Возвращает коллекцию свойств динамического действия.

ICustomTypeDescriptor.GetProperties(Attribute[])

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

ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Возвращает этот экземпляр DynamicActivity класса.

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