public static async Task TransactionalOperationAsync(Func <Task> func) { try { using (var dbContext = REAUDbContext.CreateDefaultSerializationContext()) { await func(); dbContext.Complete(); } } catch (Exception ex) { // log ex throw; } }
public static async Task <T> TransactionalOperationAsync <T>(Func <Task <T> > func) { T res = default(T); try { using (var dbContext = REAUDbContext.CreateDefaultSerializationContext()) { res = await func(); dbContext.Complete(); } } catch (Exception ex) { // log ex throw; } return(res); }