public IHttpActionResult PostUnit(Unit unit) { if (!ModelState.IsValid) { return BadRequest(ModelState); } var id = ((ClaimsIdentity)User.Identity).GetUserId(); if ( db.Units.Any(x => x.Name.ToLower() == unit.Name.ToLower() && x.RestaurantId == id && x.IsActive == true)) { return BadRequest("Duplicated Record Name"); } unit.CreatedBy = id; unit.CreatedDate = DateTime.Now; unit.ModifiedBy = id; unit.ModifiedDate = DateTime.Now; unit.IsActive = true; unit.RestaurantId = id; try { db.Units.Add(unit); db.SaveChanges(); } catch (Exception e) { ErrorSignal.FromCurrentContext().Raise(e); throw new Exception("There was a problem saving this record: " + e.Message); } return CreatedAtRoute("GetUnitId", new { id = unit.UnitId }, unit); }
public IHttpActionResult PutUnit(int id, Unit unit) { if (!ModelState.IsValid) { return BadRequest(ModelState); } if (id != unit.UnitId) { return BadRequest(); } db.Entry(unit).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!UnitExists(id)) { return NotFound(); } else { // ErrorSignal.FromCurrentContext().Raise(e); //ELMAH Signaling throw; } } return StatusCode(HttpStatusCode.NoContent); }