public Validation CreateExpense(ref Expense expense) { Validation val = Validate(expense); IAuctionTransaction trans = _factory.BuildTransaction("InsertExpense"); try { //validate if (val.IsValid) { _repo.InsertExpense(ref expense, ref trans); } trans.Commit(); } catch (Exception e) { trans.Rollback(); val.AddError(string.Format("Unable to create expense: {0}", e.Message)); } finally { trans.Dispose(); } return val; }
private static Validation Validate(Expense expense) { var val = new Validation(); if (string.IsNullOrEmpty(expense.Name)) { val.AddError("Name is required"); } if (expense.EventId < 0) { val.AddError("Event is required"); } return val; }