public ShapesDTO AddShape(ShapesRequest request) { try { using (var scope = new TransactionScope()) { var shape = new Shapes { Title = request.Title, Area = request.Area, Description = request.Description, Latitude = request.Latitude, Longitude = request.Longitude, ShapeType = request.ShapeType, CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now }; _unitOfWork.Shapes.Add(shape); _unitOfWork.SaveChanges(); scope.Complete(); return (_mapper.Map <Shapes, ShapesDTO> (shape)); } } catch (Exception exception) { Console.WriteLine(exception); throw; } }
public IActionResult Post([FromBody] ShapesRequest request) { var response = new SingleResponse <ShapesDTO>(); try { if (request == null) { response.Messages = ResponseMessages.BadRequest(); return(NotFound(response)); } if (!ModelState.IsValid) { response.Messages = ResponseMessages.ModelValidate(ModelState); return(UnprocessableEntity(response)); } var result = _shapesLogic.AddShape(request); response.Messages = ResponseMessages.Created(); response.Model = result; return(CreatedAtRoute("GetShapeByid", new { id = result.ShapeId }, response)); } catch (Exception exception) { response.Messages = ResponseMessages.InternalServerError(exception.ToString()); return(StatusCode(500, response)); } }