UiPath Documentation
sdk
latest
false
Wichtig :
Bitte beachten Sie, dass dieser Inhalt teilweise mithilfe von maschineller Übersetzung lokalisiert wurde. Es kann 1–2 Wochen dauern, bis die Lokalisierung neu veröffentlichter Inhalte verfügbar ist.
UiPath logo, featuring letters U and I in white

Entwickleranleitung

Letzte Aktualisierung 30. März 2026

So erstellen Sie einen benutzerdefinierten Trigger

Automatisierungsprojekte profitieren von Triggern, die die Maschinenaktivität auf bestimmte Ereignisse überwachen, um bestimmte Actions. Trigger können über das Framework Events konfiguriert werden, aber Sie können auch benutzerdefinierte Trigger erstellen, wie in diesem Handbuch erläutert.

Voraussetzungen

Zum Erstellen eines benutzerdefinierten Triggers ist Folgendes erforderlich:

  • Microsoft Visual Studio
  • Microsoft .NET Framework v4.6.1 oder höher

Erstellen und Konfigurieren des Projekts

  1. Öffnen Sie Microsoft Visual Studio, und wählen Sie Ein neues Projekt erstellen aus. Das Fenster Projektauswahl wird angezeigt.

  2. Wählen Sie Klassenbibliothek (.NET Framework) aus und klicken Sie auf Weiter. Das Fenster Konfigurieren Ihres neuen Projekts wird angezeigt.

  3. Geben Sie einen Projektnamen, einen Standort, einen Lösungsnamen und ein Framework an. Stellen Sie sicher, dass Sie das Framework .NET Framework 4.6.1 oder höher auswählen. Wenn alle Felder ausgefüllt sind, klicken Sie auf Erstellen. Das neue Projekt wird erstellt und das Designerfenster wird angezeigt.

    docs image

  4. Wählen Sie im Menü Extras die Option Optionen. Nun wird das Fenster Optionen angezeigt.

  5. Erweitern Sie den Eintrag „NuGet-Paketmanager“ und wählen Sie Paketquellen aus.

  6. Fügen Sie eine neue Paketquelle hinzu und füllen Sie das Feld Name mit dem offiziellen UiPath-Feed und das Feld Quelle mit https://pkgs.dev.azure.com/uipath/Public.Feeds/_packaging/UiPath-Official/nuget/v3/index.json aus. Klicken Sie auf OK , um die Änderungen zu bestätigen und zu speichern.

    docs image

  7. Klicken Sie auf das Menü Tools und wählen Sie im Eintrag NuGet-Paketmanager die Option NuGet-Pakete für Lösung verwalten... aus. Die Registerkarte NuGet – Lösungen wird angezeigt.

  8. Suchen Sie nach der Referenz UiPath.Platform und wählen Sie diese. Wählen Sie im Panel auf der rechten Seite das Projekt aus, für das der Verweis hinzugefügt werden soll, und klicken Sie dann auf Installieren. Stellen Sie sicher, dass Sie das Kontrollkästchen Vorabversion einschließen aktivieren und die UiPath.Platform- Version v20.8 oder höher installieren.

Schreiben des Triggercodes

Once the references are added to the project, it's time to write the code, which should look something like this:

using System; 
using System.Activities; 
using System.Threading; 
using UiPath.Platform.Triggers; 
 
public class TimerTrigger : TriggerBase<TimerTriggerArgs> 
{ 
 //it is recommended to use Variable to store fields in order for  
 //activities like Parallel For Each to work correctly 
   private readonly Variable<Timer> _timer = new Variable<Timer>();   
  public InArgument<TimeSpan> Period { get; set; }    
protected override void CacheMetadata(NativeActivityMetadata metadata) 
    { 
        metadata.AddImplementationVariable(_timer); 
        base.CacheMetadata(metadata); 
    }     
  
//in this method you can subscribe to events. It is called when the trigger starts execution 
protected override void StartMonitor(NativeActivityContext context, Action<TimerTriggerArgs> sendTrigger) 
    { 
        var eventIndex = 0; 
        var period = Period.Get(context); 
        _timer.Set(context, new Timer(OnTick, state: null, dueTime: period, period: period)); 
        return;  
void OnTick(object state) => sendTrigger(new TimerTriggerArgs(eventIndex++));    
}     
 
   //this is used for cleanup. It is called when the trigger is Cancelled or Aborted 
   protected override void StopMonitor(ActivityContext context) => _timer.Get(context).Dispose(); 
} 
 
//Each trigger may declare a type that sub-classes TriggerArgs 
//that corresponds to the “args” item in Trigger Scope activity. If no extra info 
//needs to be passed along, TriggerArgs can be used directly 
public class TimerTriggerArgs : TriggerArgs 
{ 
    public int EventIndex { get; } 
 
    public TimerTriggerArgs(int eventIndex) => EventIndex = eventIndex; 
}
using System; 
using System.Activities; 
using System.Threading; 
using UiPath.Platform.Triggers; 
 
public class TimerTrigger : TriggerBase<TimerTriggerArgs> 
{ 
 //it is recommended to use Variable to store fields in order for  
 //activities like Parallel For Each to work correctly 
   private readonly Variable<Timer> _timer = new Variable<Timer>();   
  public InArgument<TimeSpan> Period { get; set; }    
protected override void CacheMetadata(NativeActivityMetadata metadata) 
    { 
        metadata.AddImplementationVariable(_timer); 
        base.CacheMetadata(metadata); 
    }     
  
//in this method you can subscribe to events. It is called when the trigger starts execution 
protected override void StartMonitor(NativeActivityContext context, Action<TimerTriggerArgs> sendTrigger) 
    { 
        var eventIndex = 0; 
        var period = Period.Get(context); 
        _timer.Set(context, new Timer(OnTick, state: null, dueTime: period, period: period)); 
        return;  
void OnTick(object state) => sendTrigger(new TimerTriggerArgs(eventIndex++));    
}     
 
   //this is used for cleanup. It is called when the trigger is Cancelled or Aborted 
   protected override void StopMonitor(ActivityContext context) => _timer.Get(context).Dispose(); 
} 
 
//Each trigger may declare a type that sub-classes TriggerArgs 
//that corresponds to the “args” item in Trigger Scope activity. If no extra info 
//needs to be passed along, TriggerArgs can be used directly 
public class TimerTriggerArgs : TriggerArgs 
{ 
    public int EventIndex { get; } 
 
    public TimerTriggerArgs(int eventIndex) => EventIndex = eventIndex; 
}

Als Nächstes implementieren wir die Methoden StartMonitor und StopMonitor . Dadurch wird das Verhalten des Triggers zur Überwachung bestimmter Ereignisse bestimmt.

Bitte beachten Sie, dass Sie eine <Custom>TriggerArgs -Klasse im Designer hinzufügen und konfigurieren müssen, wenn Sie Argumente zur Erweiterung der Trigger-Verwendung im Event-Handler bereitstellen möchten.

Der letzte Schritt besteht darin, die Bibliothek zu erstellen und das NuGet-Paket zu erstellen , das in Studio verwendet werden soll. Der neue Trigger kann jetzt innerhalb einer Trigger Scope- Aktivität verwendet werden.

War diese Seite hilfreich?

Verbinden

Benötigen Sie Hilfe? Support

Möchten Sie lernen? UiPath Academy

Haben Sie Fragen? UiPath-Forum

Auf dem neuesten Stand bleiben