Exemple #1
0
        public JsonResult Post([FromBody] WorkoutViewModel vm)
        {
            try {
                if (ModelState.IsValid)
                {
                    // Map from VM to model so we can save it in database
                    var newWorkout = Mapper.Map <Workout>(vm);

                    newWorkout.username = User.Identity.Name;

                    // Save to the Database
                    _logger.LogInformation("Attemting to save a new workout to the database");
                    _repository.addWorkout(newWorkout);

                    if (_repository.saveAll())
                    {
                        Response.StatusCode = (int)HttpStatusCode.Created;
                        return(Json(Mapper.Map <WorkoutViewModel>(newWorkout)));
                    }
                }
            }
            catch (Exception ex)
            {
                _logger.LogError("Could not post to the database", ex);
                Response.StatusCode = (int)HttpStatusCode.BadRequest;
                return(Json(new { Message = ex.Message }));
            }
            Response.StatusCode = (int)HttpStatusCode.BadRequest;
            return(Json(new { message = "Faild", ModelState = ModelState }));
        }