Sdílet prostřednictvím


Návrhář aktivity InvokeMethod

Návrhář InvokeMethod slouží k vytvoření a konfiguraci InvokeMethod aktivity.

Aktivita InvokeMethod

Volání InvokeMethod veřejné metody zadaného objektu nebo typu.

Použití Návrháře aktivity InvokeMethod

Přístup k Návrháři aktivit InvokeMethod v kategorii Primitives sady nástrojů. Návrhář aktivity InvokeMethod lze přetáhnout z panelu nástrojů a přetáhnout na plochu Návrhář pracovního postupu, kde jsou někdy aktivity obvykle umístěny, například uvnitř Sequence. Vyřazení návrháře aktivit vytvoří InvokeMethod aktivitu s výchozím nastavením DisplayName InvokeMethod. Lze DisplayName upravit v záhlaví Návrhář aktivity InvokeMethod nebo v poli DisplayName mřížky vlastností.

Vlastnosti InvokeMethod

Následující tabulka ukazuje InvokeMethod vlastnosti a popisuje, jak se používají v návrháři. Tyto vlastnosti je možné upravovat v mřížce vlastností a některé je možné upravovat na ploše Návrháře pracovního postupu.

Název vlastnosti Požaduje se Využití
DisplayName False Popisný název InvokeMethod aktivity. Výchozí hodnota je InvokeMethod.

DisplayName I když to není nezbytně nutné, je nejlepší použít ho.
MethodName True Název metody, která se má volat při spuštění aktivity. Volaná metoda musí být deklarována jako veřejná. Tuto vlastnost lze upravit na ploše návrháře a je povinná.
Parameters False Kolekce parametrů volané metody. Parametry musí být přidány do kolekce ve stejném pořadí, v jakém se zobrazují v podpisu metody. Chcete-li zobrazit dialogové okno Parametry , kde můžete nastavit tuto vlastnost, klepněte na tlačítko se třemi tečky v poli Parametry mřížky vlastností. Kliknutím na tlačítko Vytvořit argument přidejte parametry.
Result False Návratová hodnota volání metody.
RunAsynchronously True Určuje, zda metoda je volána asynchronně. Výchozí hodnota je False.
TargetObject False Objekt, který obsahuje metodu volání. Tuto vlastnost lze upravit na ploše návrháře.

Buď musí TargetObject být nastavená hodnota, nebo je TargetType potřeba ji nastavit.
TargetType False Typ .TargetObject Tuto vlastnost lze upravit na ploše návrháře. Tato vlastnost musí být nastavena pouze v případě, že je volána metoda statická.

Pokud chcete předat parametry jako parametr out jazyka C# (například Method1(out myParam))použijte OutArgument místo InOutArgument.

Metody s argumenty s názvem TargetObject nebo Result nelze vyvolat pomocí InvokeMethod aktivity. Důvodem je, že InvokeMethod aktivita registruje GenericTypeArgumentsa TargetObject Result v CacheMetadata.

Algoritmus pro registraci parametrů je CacheMetadata uvedený v následujícím seznamu:

  1. Registrovat TargetObject argument.

  2. Registrovat Result argument.

  3. Iterujte kolekcí Parameters a zaregistrujte jednotlivé argumenty.

Výsledná výjimka je typu InvalidWorkflowException s následující zprávou: InvokeMethod: Proměnná, RuntimeArgument nebo DelegateArgument již existuje s názvem TargetObject. Názvy musí být jedinečné v rámci oboru prostředí.

Toto omezení neplatí pro TargetType a RunAsynchronously. Nejsou argumenty pracovního postupu, a proto nejsou zaregistrované v GenericTypeArguments kolekci InvokeMethod aktivity v CacheMetadata metodě.

Viz také