B-Arts DocumentationIndice generale

BWorkerServiceModel - esempi

Elaborazione periodica

public override async Task<bool> ElaborationAsync(CancellationToken stoppingToken)
{
  try
  {
    WriteLog("Elaborazione avviata");

    await ElaboraElementi(stoppingToken);

    WriteLog("Elaborazione completata");
    return true;
  }
  catch (OperationCanceledException) when (stoppingToken.IsCancellationRequested)
  {
    WriteLog("Arresto del servizio richiesto");
    return true;
  }
  catch (Exception ex)
  {
    WriteLog("Errore durante l'elaborazione", BEnumerations.eSeverity.ERROR, ex);
    return false;
  }
}

Configurazione aggiuntiva

Nella parte BPartialClasses/BAppSetting.cs:

[BFieldSetting(true)]
public int NumeroElementiPerCiclo { get; set; } = 100;

public override void PartialMappingDataDefault()
{
  NumeroElementiPerCiclo = 100;
  base.PartialMappingDataDefault();
}

Installazione

SET SERVICE_NAME=MioServizio
SET SERVICE_PATH=C:\Servizi\MioServizio\MioServizio.exe
SET SERVICE_DESC=Servizio di elaborazione B-Arts

Pubblicare prima l'eseguibile nel percorso indicato, quindi eseguire lo script come amministratore.