Teilen über


DynamicActivity Klasse

Definition

Stellt ein Objektmodell bereit, das die dynamische Erstellung von Aktivitäten ermöglicht, die per ICustomTypeDescriptor mit dem WF-Designer und der Workflowlaufzeit interagieren.

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
Vererbung
DynamicActivity
Attribute
Implementiert

Beispiele

Im folgenden Beispiel wird gezeigt, wie ein DynamicActivity erstellt wird.

// 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>())
                },
            }
        }

Konstruktoren

DynamicActivity()

Erstellt eine neue Instanz der DynamicActivity-Klasse.

Eigenschaften

Attributes

Ruft die Auflistung der Attribute für die dynamisch generierte Aktivität ab.

CacheId

Ruft den Bezeichner des Caches ab, der innerhalb des Bereichs der Workflowdefinition eindeutig ist.

(Geerbt von Activity)
Constraints

Gibt eine Auflistung mit Constraint-Aktivitäten zurück, die konfiguriert werden, um die Validierung für die DynamicActivity bereitstellen zu können.

DisplayName

Ruft einen optionalen Anzeigenamen ab, der für Debugging, Validierung, Ausnahmebehandlung und Nachverfolgung verwendet wird, oder legt ihn fest.

(Geerbt von Activity)
Id

Ruft einen Bezeichner ab, der innerhalb des Bereichs der Workflowdefinition eindeutig ist.

(Geerbt von Activity)
Implementation

Ruft die Ausführungslogik der Aktivität ab oder legt sie fest.

ImplementationVersion

Ruft die Implementierungsversion der Aktivität ab oder legt diese fest.

ImplementationVersion

Übernimmt oder bestimmt die Version für die benutzte Implementierung.

(Geerbt von Activity)
Name

Der Name, der für die Aktivität im Workflow-Designer angezeigt werden soll.

Properties

Ruft die Auflistung der Eigenschaften ab, die den Argumenten der dynamisch generierten Aktivität zugeordnet werden.

Methoden

CacheMetadata(ActivityMetadata)

Erstellt und überprüft eine Beschreibung der Argumente, Variablen, untergeordneten Aktivitäten und Aktivitätsdelegaten der Aktivität.

(Geerbt von Activity)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Löst ein Ereignis aus, wenn die dynamische Updatezuordnung erstellt wird.

(Geerbt von Activity)
ShouldSerializeDisplayName()

Gibt an, ob die DisplayName- Eigenschaft serialisiert werden soll.

(Geerbt von Activity)
ToString()

Gibt eine String zurück, die Id und DisplayName von Activity enthält.

(Geerbt von Activity)

Explizite Schnittstellenimplementierungen

ICustomTypeDescriptor.GetAttributes()

Gibt eine Auflistung mit Attributen der dynamischen Aktivität zurück.

ICustomTypeDescriptor.GetClassName()

Gibt den Klassennamen der dynamischen Aktivität zurück.

ICustomTypeDescriptor.GetComponentName()

Gibt den Komponentennamen der dynamischen Aktivität zurück.

ICustomTypeDescriptor.GetConverter()

Gibt für die dynamische Aktivität einen Typkonverter zurück.

ICustomTypeDescriptor.GetDefaultEvent()

Gibt das Standardereignis für die dynamische Aktivität zurück.

ICustomTypeDescriptor.GetDefaultProperty()

Gibt die Standardeigenschaft für die dynamische Aktivität zurück.

ICustomTypeDescriptor.GetEditor(Type)

Gibt einen Editor mit dem angegebenen Basistyp zurück.

ICustomTypeDescriptor.GetEvents()

Gibt die Auflistung mit Ereignissen der dynamischen Aktivität zurück.

ICustomTypeDescriptor.GetEvents(Attribute[])

Gibt die Auflistung mit den Ereignissen der dynamischen Aktivität zurück. Hierbei wird das angegebene Array mit Attributen als Filter verwendet.

ICustomTypeDescriptor.GetProperties()

Gibt die Auflistung mit den Eigenschaften der dynamischen Aktivität zurück.

ICustomTypeDescriptor.GetProperties(Attribute[])

Gibt die Auflistung mit den Eigenschaften der dynamischen Aktivität zurück. Hierbei wird das angegebene Array mit Attributen als Filter verwendet.

ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Gibt diese Instanz der DynamicActivity-Klasse zurück.

Gilt für: