public IEnumerable <CommentFilterDTO> GetCommentsByFilter(String stringToSearch) { IEnumerable <Task> all = context.Tasks.Include(t => t.Comments); CommentFilterDTO commentFilterDTO; List <CommentFilterDTO> resultEnum = new List <CommentFilterDTO>(); foreach (Task task in all) { foreach (Comment comment in task.Comments) { if (comment.Text.Contains(stringToSearch)) { commentFilterDTO = new CommentFilterDTO(); commentFilterDTO.Id = comment.Id; commentFilterDTO.Text = comment.Text; commentFilterDTO.Important = comment.Important; commentFilterDTO.TaskId = task.Id; resultEnum.Add(commentFilterDTO); } } } IEnumerable <CommentFilterDTO> send = resultEnum; return(send); }
public PaginatedList <CommentFilterDTO> GetAll(string filter, int page) { IQueryable <Comment> result = context .Comments .Where(c => string.IsNullOrEmpty(filter) || c.Text.Contains(filter)) .OrderBy(c => c.Id) .Include(c => c.Task); PaginatedList <CommentFilterDTO> paginatedResult = new PaginatedList <CommentFilterDTO>(); paginatedResult.CurrentPage = page; paginatedResult.NumberOfPages = (result.Count() - 1) / PaginatedList <CommentFilterDTO> .EntriesPerPage + 1; result = result .Skip((page - 1) * PaginatedList <CommentFilterDTO> .EntriesPerPage) .Take(PaginatedList <CommentFilterDTO> .EntriesPerPage); paginatedResult.Entries = result.Select(f => CommentFilterDTO.FromComment(f)).ToList(); return(paginatedResult); }
public IEnumerable <CommentFilterDTO> GetAll(String keyword) { IQueryable <Task> result = context.Tasks.Include(c => c.Comments); List <CommentFilterDTO> resultFilteredComments = new List <CommentFilterDTO>(); List <CommentFilterDTO> resultAllComments = new List <CommentFilterDTO>(); foreach (Task task in result) { task.Comments.ForEach(c => { if (c.Text == null || keyword == null) { CommentFilterDTO comment = new CommentFilterDTO { Id = c.Id, Important = c.Important, Text = c.Text, TaskId = task.Id }; resultAllComments.Add(comment); } else if (c.Text.Contains(keyword)) { CommentFilterDTO comment = new CommentFilterDTO { Id = c.Id, Important = c.Important, Text = c.Text, TaskId = task.Id }; resultFilteredComments.Add(comment); } }); } if (keyword == null) { return(resultAllComments); } return(resultFilteredComments); }