using (System.Threading.CancellationTokenSource cancellationTokenSource = new System.Threading.CancellationTokenSource())
{
RetZselectAsync r = null;
MercatorUi._BaseClasses.ExclusiveBackgroundWorkerAsync ebwa = new MercatorUi._BaseClasses.ExclusiveBackgroundWorkerAsync(
async () => r = await Api.ZselectAsync(Globals.RepData, reqSql, cancellationTokenSource: cancellationTokenSource),
sigForm,
cancellationTokenSource: cancellationTokenSource);
if (cancellationTokenSource.IsCancellationRequested)
{
// de gebruiker heeft op Annuleren geklikt
return;
}
else if (r == null)
{
// er is een uitzondering opgetreden in de code van deAsync actie
Dialogs.Stop(ebwa.ExceptionDuringDoWork?.Message ?? "Unknown error!");
return;
}
else if (r.Result == null)
{
// er is een SQL-fout opgetreden
r.Zstoperror();
return;
}
else
{
// alles is goed!
DataSet dataSet = r.Result;
}
}