private void TryCreateOrder(ISqlConnectionResolver sqlConnectionResolver, string orderName) { var orderCreator = new OrderCreator(sqlConnectionResolver); var orderItemCreator = new OrderItemCreator(sqlConnectionResolver); using (var transaction = new TransactionScope()) { var order = orderCreator.Create(new OrderCreatorInput { Name = orderName }); orderItemCreator.Create(new OrderItemCreatorInput { OrderId = order.OrderId, Name = "Item" }); transaction.Complete(); } }
private void ExecuteLongRunningTask(ISqlConnectionResolver connectionResolver, string taskName, bool shouldFail) { // We don't use transaction - if task fails, it remains in the database, marked as incomplete var taskCreator = new TaskCreator(connectionResolver); var taskCompleter = new TaskCompleter(connectionResolver); var task = taskCreator.Create(new TaskCreatorInput { Name = taskName }); // Perfom long-running operations... if (shouldFail) { throw new InvalidOperationException("Task failed."); } taskCompleter.Complete(new TaskCompleterInput { TaskId = task.TaskId }); }
public PeopleBatchReader(ISqlConnectionResolver sqlConnectionResolver) { _sqlConnectionResolver = sqlConnectionResolver; }
public ExecuteSqlWithDapper(ISqlConnectionResolver sqlConnectionResolver) { if (sqlConnectionResolver == null) throw new ArgumentNullException("sqlConnectionResolver"); this.sqlConnectionResolver = sqlConnectionResolver; }
public CommitSqlConnection(ISqlConnectionResolver sqlConnectionResolver) { if (sqlConnectionResolver == null) throw new ArgumentNullException("sqlConnectionResolver"); this.sqlConnectionResolver = sqlConnectionResolver; }
public TaskCompleter(ISqlConnectionResolver sqlConnectionResolver) { _sqlConnectionResolver = sqlConnectionResolver; }
public OrderCreator(ISqlConnectionResolver sqlConnectionResolver) { _sqlConnectionResolver = sqlConnectionResolver; }
public PeopleSummaryReader(ISqlConnectionResolver sqlConnectionResolver) { _sqlConnectionResolver = sqlConnectionResolver; }
public TaskCreator(ISqlConnectionResolver sqlConnectionResolver) { _sqlConnectionResolver = sqlConnectionResolver; }
public PeopleCounter(ISqlConnectionResolver sqlConnectionResolver) { _sqlConnectionResolver = sqlConnectionResolver; }
public SqlServerBulkInsert(ISqlConnectionResolver connectionResolver) { if (connectionResolver == null) throw new ArgumentNullException("connectionResolver"); this.connectionResolver = connectionResolver; }