public static Result ForEachNewTransactionEvolutionContext( this IBackgroundWorker backgroundWorker, Func <WineMsDbContext, WineMsOrderTransactionDocument[]> loadData, Func <WineMsOrderTransactionDocument, Result> func) { return(backgroundWorker .ForEachNewTransaction(loadData, transaction => transaction .CompanyId .GetEvolutionConnectionStrings() .WrapInEvolutionSdk(transaction.BranchId, () => func(transaction)))); }