public async Task <List <SimplePostModel> > GetPostsById(int id) { var posts = await _context.Posts .Include(x => x.User) .Include(x => x.Likes) .ThenInclude(x => x.User) .Where(x => x.User.Id == id) .ToListAsync(); return(posts.Select(x => SimplePostModel.ConvertToSimplePostModel(x)).ToList()); }
public async Task <List <SimplePostModel> > GetFriendPosts(User user) { var friendsIds = await _context.UserFriends .Include(x => x.User) .Include(x => x.Friend) .Where(x => x.User.Id == user.Id) .Select(x => x.FriendId) .ToListAsync(); var friendPosts = await _context.Posts .Include(x => x.User) .Include(x => x.Likes) .ThenInclude(x => x.User) .Where(x => friendsIds.Contains(x.User.Id)) .ToListAsync(); return(friendPosts.Select(x => SimplePostModel.ConvertToSimplePostModel(x)).ToList()); }