public async Task <IActionResult> AssignUser([FromRoute] Guid id, [FromBody] AttachUserWithTaskCommand command /*,[FromRoute] Guid profileId*/) { try { command.TaskId = id; if (!ModelState.IsValid) { return(base.BadRequest(ModelState)); } //var result = await _mediator.Send(new AttachUserWithTaskCommand() { TaskId = taskId/*, UserId = profileId*/ }); //var result = await _mediator.Send(new AttachUserWithTaskCommandResult()); var result = await _mediator.Send <AttachUserWithTaskCommandResult>(command); return(base.Ok(result)); } catch (NotFoundException) { return(base.NotFound()); } }
public async Task AssignUserWithTask(Guid id, AttachUserWithTaskCommand command) { try { _httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", await _authHandler.GetAuthAccessToken()); var task = await GetById(id); var response = await _httpClient.PutAsJsonAsync <AttachUserWithTaskCommand>($"api/Tasks/{id}/AssignUser", command); if (response.IsSuccessStatusCode) { var commandResult = await response.Content.ReadFromJsonAsync <AttachUserWithTaskCommandResult>(); var tasks = new List <TaskDto>(_tasksSubject.Value); //For replacing the object var idx = tasks.IndexOf(task); if (idx >= 0) { tasks[idx] = commandResult.Payload; } _tasksSubject.OnNext(tasks); _apiCallResultSubject.OnNext(new ApiCallResult <string>() { IsSucceed = true, Operation = "AttachUserWithTask" }); } } catch (Exception ex) { _apiCallResultSubject.OnNext(new ApiCallResult <string>() { IsSucceed = false, Operation = "AttachUserWithTask", ErrorMessage = ex.Message }); } }