private void DoDataWork(Action <ISimpleCrmUow> operation, bool withAutoCommit = true) { var factories = new RepositoryFactories(); IRepositoryProvider provider = new RepositoryProvider(factories); using (ISimpleCrmUow uow = new SimpleCrmUow(provider)) { operation(uow); if (withAutoCommit) { uow.Commit(); } } }
private T DoDataWork <T>(Func <ISimpleCrmUow, T> operation, bool withAutoCommit = true) { var factories = new RepositoryFactories(); IRepositoryProvider provider = new RepositoryProvider(factories); using (ISimpleCrmUow uow = new SimpleCrmUow(provider)) { var result = operation(uow); if (withAutoCommit) { uow.Commit(); } return(result); } }