public async Task <IActionResult> PostTaskList([FromBody] ViewModel.TaskList taskList) { try { _logger.LogInformation("TaskController: PostTaskList() method is being invoked"); if (!ModelState.IsValid) { _logger.LogWarning("TaskController: PostTaskList() - Invalid input parameters are passed."); return(BadRequest(ModelState)); } var config = new MapperConfiguration(cfg => { cfg.CreateMap <TaskList, Model.TaskList>(); }); var mapper = config.CreateMapper(); var modelTask = mapper.Map <TaskList, Model.TaskList>(taskList); var postResponse = await _taskRepo.CreateTask(modelTask); _logger.LogInformation("TaskController: PostTaskList() method is successfully invoked."); return(Ok(postResponse)); } catch (Exception ex) { _logger.LogError("TaskController: Error Processing PutTaskList() method. Exception : {0}", ex.Message); return(StatusCode(StatusCodes.Status500InternalServerError)); } //_context.TaskList.Add(taskList); //await _context.SaveChangesAsync(); //return CreatedAtAction("GetTaskList", new { id = taskList.Id }, taskList); }
public async Task <IActionResult> PutTaskList([FromRoute] int id, [FromBody] ViewModel.TaskList taskList) { try { _logger.LogInformation("TaskController: PutTaskList() method is being invoked"); if (!ModelState.IsValid) { _logger.LogWarning("TaskController: PutTaskList() - Model State in invalid. Please check the input parameters."); return(BadRequest(ModelState)); } if (id != taskList.Id) { _logger.LogWarning("TaskController: PutTaskList() - Incorrect ID is passed"); return(BadRequest()); } var config = new MapperConfiguration(cfg => { cfg.CreateMap <TaskList, Model.TaskList>(); }); var mapper = config.CreateMapper(); var modelTask = mapper.Map <TaskList, Model.TaskList>(taskList); _logger.LogInformation("TaskController: PutTaskList() method is successfully invoked"); return(Ok(await _taskRepo.UpdateTask(id, modelTask))); } catch (Exception ex) { _logger.LogError("TaskController: Error Processing PutTaskList() method. Exception : {0}", ex.Message); return(StatusCode(StatusCodes.Status500InternalServerError)); } //_context.Entry(taskList).State = EntityState.Modified; //try //{ // await _context.SaveChangesAsync(); //} //catch (DbUpdateConcurrencyException) //{ // if (!TaskListExists(id)) // { // return NotFound(); // } // else // { // throw; // } //} //return NoContent(); }