Wenn ein Work-Item, nachdem es fertig ist, oder zum Aufräumen, ein weiteres, anderes Work-Item starten will, sollte die Methode Api.Worker.CreateOrUpdate mit der UnitOfWork des aktuellen Work-Items verwendet werden. Beispiel:

Api.Worker.CreateOrUpdate(new MassEMailSendWorkerTask(_ControlOrm, LoggerGuid)
{
    MessageOnSuccess = MessageOnSuccess,
    MessageOnError = MessageOnError
}, UnitOfWork);

Dadurch ist sichergestellt, dass das neue Item nur startet, wenn auch die begleitenden Änderungen am aktuellen Item gespeichert wurden. So ist nach einem unerwarteten Anwendungsneustart klar, ob der Nachfolger noch gestartet werden muss oder nicht.

Falls der Nachfolger nicht aus WorkItemFinished heraus gestartet wird, sollte sich das Work-Item einer internen, persistierten Eigenschaft merken, dass dies erledigt ist, um doppelte Starts zu vermeiden.

Ein Nachfolge-Worker unterscheidet sich von einer Neueinplanung dadurch, dass er eine andere InstanceGuid und im allgemeinen auch eine andere Worker-Klasse verwendet.

Es können auch mehrere Nachfolge-Worker in einem Schritt gestartet werden.