InvokeMethod-Aktivitätsdesigner

InvokeMethod-Designer wird verwendet, um eine InvokeMethod-Aktivität zu erstellen und zu konfigurieren.

Die InvokeMethod-Aktivität

Die InvokeMethod-Aktivität ruft eine öffentliche Methode eines angegebenen Objekts oder Typs auf.

Verwenden des InvokeMethod-Aktivitätsdesigners

Der InvokeMethod-Aktivitätsdesigner befindet sich in der Kategorie Primitives der Toolbox, auf die Sie zugreifen können, indem Sie in Workflow-Designer auf die Registerkarte Toolbox klicken (Sie können auch im Menü Ansicht den Befehl Toolbox auswählen oder STRG+ALT+X drücken).

Der InvokeMethod-Aktivitätsdesigner kann aus der Toolbox gezogen und auf der Workflow-Designer-Oberfläche dort abgelegt werden, wo Aktivitäten normalerweise platziert werden, etwa innerhalb einer Sequence. Daraufhin wird eine InvokeMethod-Aktivität mit dem DisplayName-Standardwert InvokeMethod erstellt. Der DisplayName-Wert kann im Header des InvokeMethod-Aktivitätsdesigners oder im Feld DisplayName des Eigenschaftenrasters bearbeitet werden.

Die InvokeMethod-Eigenschaften

In der folgenden Tabelle werden die InvokeMethod-Eigenschaften aufgeführt, und es wird beschrieben, wie sie im Designer verwendet werden. Diese Eigenschaften können im Eigenschaftenraster bearbeitet werden, einige davon können auch in der Workflow-Designer-Designeroberfläche bearbeitet werden.

Eigenschaftenname Erforderlich Verwendung

DisplayName

False

Gibt den Anzeigenamen der InvokeMethod-Aktivität an. Der Standardwert lautet InvokeMethod.

Obwohl der DisplayName nicht zwingend erforderlich ist, wird empfohlen, einen Anzeigenamen zu verwenden.

MethodName

True

Der Name der Methode, die bei Ausführung der Aktivität aufgerufen werden soll. Die aufgerufene Methode muss als public-Methode deklariert worden sein. Diese Eigenschaft kann in der Designeroberfläche bearbeitet werden. Dies ist eine obligatorische Eigenschaft.

Parameters

False

Die Parameterauflistung der aufgerufenen Methode. Die Parameter müssen der Auflistung in derselben Reihenfolge wie in der Methodensignatur hinzugefügt werden. Klicken Sie im Eigenschaftenraster im Parameters-Feld auf die Schaltfläche mit den Auslassungspunkten. Daraufhin wird das Dialogfeld Parameter angezeigt, in dem Sie diese Eigenschaft festlegen können. Klicken Sie auf die Schaltfläche Argument erstellen, um die Parameter hinzuzufügen.

Result

False

Der Rückgabewert des Methodenaufrufs.

RunAsynchronously

True

Gibt an, ob die Methode asynchron aufgerufen wird. Der Standardwert ist False.

TargetObject

False

Das Objekt, das die aufzurufende Methode enthält. Diese Eigenschaft kann in der Designeroberfläche bearbeitet werden.

Es muss entweder das TargetObject-Objekt oder der TargetType-Typ festgelegt werden.

TargetType

False

Der Typ des TargetObject-Objekts. Diese Eigenschaft kann in der Designeroberfläche bearbeitet werden. Diese Eigenschaft muss nur festgelegt werden, wenn die aufgerufene Methode statisch ist.

Um Parameter als out-Parameter in C# (z. B. Method1(out myParam)),) zu übergeben, sollten Sie OutArgument statt InOutArgument verwenden.

Methoden mit Argumenten namens TargetObject oder Result können nicht mit der InvokeMethod-Aktivität aufgerufen werden. Der Grund dafür ist, dass die InvokeMethod-Aktivität GenericTypeArguments, TargetObject und Result in CacheMetadata registriert.

Der Algorithmus zum Registrieren der Parameter in CacheMetadata wird in der folgenden Liste dargestellt:

  1. Registrieren Sie das TargetObject-Argument.

  2. Registrieren Sie das Result-Argument.

  3. Durchlaufen Sie die Parameters-Auflistung, und registrieren Sie jedes Argument.

Die resultierende Ausnahme hat den Typ InvalidWorkflowException mit der folgenden Meldung: 'InvokeMethod': Eine Variable, RuntimeArgument oder ein DelegateArgument ist bereits mit dem Namen 'TargetObject' vorhanden. Namen müssen innerhalb einer Umgebung eindeutig sein.

Diese Einschränkung gilt nicht für TargetType und RunAsynchronously, da sie keine Workflowargumente sind und daher nicht in der GenericTypeArguments-Auflistung der InvokeMethod-Aktivität in der CacheMetadata-Methode registriert werden.

Siehe auch

Konzepte

Assign-Aktivitätsdesigner
Delay-Aktivitätsdesigner
WriteLine-Aktivitätsdesigner

Weitere Ressourcen

Primitive Aktivitätsdesigner