Skip to content

Batchverarbeitung

Konzept

Batch-Verarbeitungen sollen in einem isolierten Thread verarbeitet werden.

Beispiel

try
{
    UnitOfWork.Execute(user, "", () =>
    {
        UnitOfWork.Current.Attach(verarbeitungsItem);
        // Isolierte Verarbeitung ...
        verarbeitungsItem.SetState("Done");
    });
}
catch (Exception e)
{
    UnitOfWork.Execute(user, "", () =>
    {
        // Status auf Suspended
        var item = UnitOfWork.Current.LoadObject<IVerarbeitungsItem>(verarbeitungsItem.Id);
        item.SetState("Suspended");
    });
}