public async Task <IActionResult> GetJoinedGroups(int?page, int?pageSize) { var me = HttpContext.User.Identity.Name; var groups = await _groupsRepository.GetUsersGroups(me, page, pageSize); var output = groups.Select(group => { #pragma warning disable AsyncFixer02 // Long running or blocking operations under an async method var lastMessage = _messagesRepository.GetMessagesFromGroup(group.GroupGuid, 0, 1).Result.FirstOrDefault(); #pragma warning restore AsyncFixer02 // Long running or blocking operations under an async method return(new GroupFoundWithMessageDto(group, lastMessage)); }); var response = new { Groups = output }; return(new OkObjectResult(response)); }
public async Task <IActionResult> GetGroupMessages(string groupGuid, int?page, int?pageNumber) { return(new OkObjectResult(new { Messages = (await _messages.GetMessagesFromGroup(groupGuid, page, pageNumber)) .Select(message => new GroupMessageDto(message)) })); }