public async Task <IActionResult> Post([FromBody] TaskViewModel task) { var allReadyTask = await ToModel(task, _mediator); if (allReadyTask == null) { return(BadRequest("Should have found a matching event Id")); } var hasPermissions = _determineIfATaskIsEditable.For(User, allReadyTask, _userManager); if (!hasPermissions) { return(Unauthorized()); } if (await TaskExists(task.Id)) { return(BadRequest()); } await _mediator.SendAsync(new AddTaskCommand { AllReadyTask = allReadyTask }); //http://stackoverflow.com/questions/1860645/create-request-with-post-which-response-codes-200-or-201-and-content return(Created("", allReadyTask)); }
public async Task <IActionResult> Post([FromBody] TaskViewModel task) { var allReadyTask = task.ToModel(_allReadyDataAccess); if (allReadyTask == null) { return(HttpBadRequest("Should have found a matching activity Id")); } var hasPermissions = _determineIfATaskIsEditable.For(User, allReadyTask); if (!hasPermissions) { return(HttpUnauthorized()); } if (IfTaskExists(task)) { return(HttpBadRequest()); } await _mediator.SendAsync(new AddTaskCommandAsync { AllReadyTask = allReadyTask }); //http://stackoverflow.com/questions/1860645/create-request-with-post-which-response-codes-200-or-201-and-content return(new HttpStatusCodeResult((int)HttpStatusCode.Created)); }