public async Task <IActionResult> GetUserMessages() { var user = await _userManager.GetUserAsync(User); if (user == null) { return(BadRequest()); } var messages = _messages.List.Where(m => m.UserId == user.Id); if (messages.Count() == 0) { return(NotFound()); } var messagesDto = new List <ReturnMessageDto>(); foreach (var message in messages) { var messageDto = new ReturnMessageDto { Message = message.Message, User = user.UserName }; messagesDto.Add(messageDto); } return(Ok(messagesDto)); }
public async Task <IActionResult> AddMessage([FromBody] CreateMessageDto message) { var user = await _userManager.GetUserAsync(User); if (user == null) { return(BadRequest()); } var messageFromRepo = new UserMessage { //Id = ObjectId.GenerateNewId(), Message = message.Message, UserId = user.Id }; await _messages.InsertAsync(messageFromRepo); var messageDto = new ReturnMessageDto { Message = messageFromRepo.Message, User = user.UserName }; return(CreatedAtRoute("GetMessage", new { id = messageFromRepo.Id }, messageDto)); }
public IActionResult GetMessages() { var messages = _messages.List; var users = _userManager.Users; var messagesDto = new List <ReturnMessageDto>(); foreach (var message in messages) { var messageDto = new ReturnMessageDto { Message = message.Message, User = users.FirstOrDefault(u => u.Id == message.UserId).UserName }; messagesDto.Add(messageDto); } return(Ok(messagesDto)); }
public async Task <IActionResult> GetMessage(string id) { var message = _messages.List.First(m => m.Id.ToString() == id); if (message == null) { return(NotFound()); } var user = await _userManager.FindByIdAsync(message.UserId.ToString()); if (user == null) { return(NotFound()); } var messageDto = new ReturnMessageDto { Message = message.Message, User = user.UserName }; return(Ok(messageDto)); }