public async virtual Task <OperationResult <List <Profile> > > ListAsync() { try { using var transactionScope = new TransactionScope(TransactionScopeOption.Required, transactionOptions, TransactionScopeAsyncFlowOption.Enabled); var result = await _dao.ListAsync(); transactionScope.Complete(); return(new OperationResult <List <Profile> >() { Success = true, Result = result }); } catch (Exception e) { return(new OperationResult <List <Profile> >() { Success = false, Exception = e }); } }