public IHttpActionResult Put(int id, [FromBody] DTO.Expense expense) { try { if (expense == null) { return(BadRequest()); } // map var exp = _expenseFactory.CreateExpense(expense); var result = _repository.UpdateExpense(exp); if (result.Status == RepositoryActionStatus.Updated) { // map to dto var updatedExpense = _expenseFactory.CreateExpense(result.Entity); return(Ok(updatedExpense)); } else if (result.Status == RepositoryActionStatus.NotFound) { return(NotFound()); } return(BadRequest()); } catch (Exception) { return(InternalServerError()); } }
public object CreateDataShapedObject(DTO.Expense expense, List <string> lstOfFields) { if (!lstOfFields.Any()) { return(expense); } else { // create a new ExpandoObject & dynamically create the properties for this object ExpandoObject objectToReturn = new ExpandoObject(); foreach (var field in lstOfFields) { // need to include public and instance, b/c specifying a binding flag overwrites the // already-existing binding flags. var fieldValue = expense.GetType() .GetProperty(field, BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance) .GetValue(expense, null); // add the field to the ExpandoObject ((IDictionary <String, Object>)objectToReturn).Add(field, fieldValue); } return(objectToReturn); } }
public IHttpActionResult Post([FromBody] DTO.Expense expense) { try { if (expense == null) { return(BadRequest()); } // map var exp = _expenseFactory.CreateExpense(expense); var result = _repository.InsertExpense(exp); if (result.Status == RepositoryActionStatus.Created) { // map to dto var newExp = _expenseFactory.CreateExpense(result.Entity); return(Created <DTO.Expense>(Request.RequestUri + "/" + newExp.Id.ToString(), newExp)); } return(BadRequest()); } catch (Exception) { return(InternalServerError()); } }
public IHttpActionResult Post([FromBody] DTO.Expense expense) { try { if (expense == null) { return(BadRequest()); } var e = _expenseFactory.CreateExpense(expense); var result = _repository.InsertExpense(e); if (result.Status == RepositoryActionStatus.Created) { var createdExpense = _expenseFactory.CreateExpense(result.Entity); return(Created(Request.RequestUri + "/" + createdExpense.Id.ToString(), createdExpense)); } else { return(BadRequest()); } } catch (Exception e) { return(InternalServerError(e)); } }
public Expense CreateExpense(DTO.Expense expense) { return(new Expense() { Amount = expense.Amount, Date = expense.Date, Description = expense.Description, ExpenseGroupId = expense.ExpenseGroupId, Id = expense.Id }); }
public Entities.IEntity CreateEntityFromDTO(DTO.IDTOEntity entity) { DTO.Expense expense = (DTO.Expense)entity; return(new Entities.Expense() { Amount = expense.Amount, ExpenseDate = expense.ExpenseDate, Description = expense.Description, ExpenseGroupId = expense.ExpenseGroupId }); }
private void SetExpense(DTO.Expense expense) { // We should not use the same expense instance, but a new one Expense = new Expense() { Amount = expense.Amount, Date = expense.Date, Description = expense.Description, ExpenseGroupId = expense.ExpenseGroupId, Id = expense.Id }; }
public object CreateDataShapedObject(DTO.Expense expense, List <string> lstOfFields) { if (!lstOfFields.Any()) { return(expense); } else { ExpandoObject objectToReturn = new ExpandoObject(); foreach (var field in lstOfFields) { var fieldValue = expense.GetType() .GetProperty(field, BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance) .GetValue(expense, null); ((IDictionary <string, object>)objectToReturn).Add(field, fieldValue); } return(objectToReturn); } }
public object CreateDataShapedObject(DTO.Expense expense, List <string> fieldList) { if (!fieldList.Any()) { return(expense); } else { ExpandoObject shapedObject = new ExpandoObject(); foreach (var field in fieldList) { var fieldValue = expense .GetType() .GetProperty(field, BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance) .GetValue(expense, null); ((IDictionary <string, object>)shapedObject).Add(field, fieldValue); } return(shapedObject); } }
public object CreateDataShapedObject(DTO.Expense expense, List <string> lstOfFields) { if (!lstOfFields.Any()) { return(expense); } else { // an object whose members can be dynamically removed and added at run-time ExpandoObject objectToReturn = new ExpandoObject(); foreach (var field in lstOfFields) { // reflection var fieldValue = expense .GetType().GetProperty(field, BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance) .GetValue(expense, null); ((IDictionary <string, object>)objectToReturn).Add(field, fieldValue); } return(objectToReturn); } }