public IActionResult Delete(int id) { var returnResult = new AddressActionResult(false, new List <string>(), null); try { using (var db = new BTAContext()) { if (db.Address.Any(x => x.AddressId == id) == false) { returnResult.StatusMessages.Add("Attempted to delete a nonexisting address."); } else { var resultAddress = db.Address.Single(x => x.AddressId == id); db.Address.Remove(resultAddress); db.SaveChanges(); returnResult.Success = true; returnResult.Data = resultAddress; returnResult.StatusMessages.Add("Successfully deleted address."); } } } catch (Exception e) { returnResult.Success = false; returnResult.StatusMessages.Add(e.Message); returnResult.Data = null; } return(returnResult.Success ? StatusCode(StatusCodes.Status200OK, returnResult) : StatusCode(StatusCodes.Status500InternalServerError, returnResult)); }
public IActionResult Put([FromBody] Address address) { string json = JsonConvert.SerializeObject(address); var returnResult = new AddressActionResult(false, new List <string>(), null); if (address != null) { if (address.AddressId <= 0) { returnResult.StatusMessages.Add("Attempting to update an existing address, but an Id is not present."); } else { try { using (var db = new BTAContext()) { var resultAddress = db.Address.SingleOrDefault(x => x.AddressId == address.AddressId); if (resultAddress != null) { resultAddress.AddressLine1 = address.AddressLine1; resultAddress.AddressLine2 = address.AddressLine2; resultAddress.AddressLine3 = address.AddressLine3; resultAddress.City = address.City; resultAddress.State = address.State; resultAddress.PostalCode = address.PostalCode; db.SaveChanges(); returnResult.Success = true; returnResult.Data = resultAddress; returnResult.StatusMessages.Add("Successfully updated address."); } else { returnResult.Success = false; returnResult.StatusMessages.Add(string.Format("Unable to locate address for index: {0}", address.AddressId)); returnResult.Data = null; } } } catch (Exception e) { returnResult.Success = false; returnResult.StatusMessages.Add(e.Message); returnResult.Data = null; } } } else { returnResult.Success = false; returnResult.StatusMessages.Add("Empty address posted for update."); returnResult.Data = null; } return(returnResult.Success ? StatusCode(StatusCodes.Status200OK, returnResult) : StatusCode(StatusCodes.Status500InternalServerError, returnResult)); }
public IActionResult Post([FromBody] Address address) { string json = JsonConvert.SerializeObject(address); var returnResult = new AddressActionResult(false, new List <string>(), null); if (address != null) { if (address.AddressId > 0) { returnResult.StatusMessages.Add("Attempting to create a new address, but an Id is present."); } else { try { using (var db = new BTAContext()) { var resultAddress = db.Address.Add(address); db.SaveChanges(); var entity = resultAddress.Entity; if (entity != null) { returnResult.Success = true; returnResult.StatusMessages.Add("Successfully added address."); returnResult.Data = entity; } } } catch (Exception e) { returnResult.Success = false; returnResult.StatusMessages.Add(e.Message); returnResult.Data = null; } } } else { returnResult.Success = false; returnResult.StatusMessages.Add("Empty address posted for add."); returnResult.Data = null; } return(returnResult.Success ? StatusCode(StatusCodes.Status200OK, returnResult) : StatusCode(StatusCodes.Status500InternalServerError, returnResult)); }