Лучший способ заказать включенные сущности в рамках сущности? - PullRequest
2 голосов
/ 02 апреля 2020

Как лучше всего заказывать сущность комментария?

 public async Task<IList<Post>> GetPosts() {
             var posts = _context.Posts
            .Include(u => u.User)
            .ThenInclude(p => p.Photos)
            .Include(c => c.Comments)   <---- THIS      
            .OrderByDescending(p => p.Created)
            .ToListAsync();

            return await posts;
        }

1 Ответ

2 голосов
/ 02 апреля 2020

Прежде чем вернуть posts, вы можете заказать Комментарии, прикрепленные к каждому сообщению:

var posts = await _context.Posts
                          .Include(u => u.User)
                          .ThenInclude(p => p.Photos)
                          .Include(c => c.Comments)         
                          .OrderByDescending(p => p.Created)
                          .ToListAsync();

foreach(var post in posts)
{
    post.Comments = post.Comments
                        .OrderBy(comment => comment.DateCreated)
                        .ToList();
} 

return posts;

Я выполнил порядок выше, основываясь на свойстве под названием DateCreated. Вы должны изменить это на свойство объекта комментария, на котором вы хотите основать порядок.

...