Um ein neues Work-Item zu erstellen, erstellt man zunächst eine neue Klasse, die von WorkItemBase
erbt. Im einfachsten Fall überschreibt man nur die Run-Methode und führt darin die Arbeit aus.
public class MyWorkItem : WorkItemBase
{
protected override void Run()
{
// Do some work
}
}
Wenn ein Work-Item keinen Standardkonstruktor haben soll (kann sinnvoll sein), dann muss für die JSON-Deserialisierung ein privater Standard-Konstruktor definiert werden.
public class MassOperationRelationCleanupTask : WorkItemBase
{
/// <summary>Default constructor for deserialization only</summary>
[JsonConstructor]
private MassOperationRelationCleanupTask() { }
/// <summary>Own contructor</summary>
public MassOperationRelationCleanupTask(Guid holderRecordOid, Guid? ...
Am Wahrscheinlichsten muss man neben Run noch die Methode WorkItemFinished
überschreiben, siehe Dokumentation unten.