Итак, этот код должен определить, сколько «лайков» имеет пользователь, а затем вернуть это значение в качестве значения «UserPhoto.Likes». В настоящее время я получаю всю модель «UserPhoto» и прорабатываю «Likes», но не собираю их вместе, как я хочу.
[HttpGet("{userId}/photo/{photoId}")]
public async Task<IQueryable> GetUserPhoto(int userId, int photoId)
{
var photos = _context.UserPhotos.Where(x => x.UserId == userId).Include(p => p.Likers);
var photo = photos.Where(x => x.Id == photoId);
var likes = _repo.CountUserLikes(userId, photoId);
// this line gets the total amount of likes for that photo
var whole = photo.Include(x => x.Likes as likes);
// this line is where I tried to send 'Likes' as 'likes'
return whole;
}
Это то, что должно быть возвращено из этого запроса, просто с правильным количеством лайков (как вы можете видеть, там есть 1 лайк, поэтому лайки должны сказать 1, но он говорит 0. Также нет ошибки в строке
var likes = _repo.CountUserLikes(userId, photoId);
, так как это возвращает правильное количество лайков, я проверил
[
{
"id": 1,
"photoUrl": "https://scontent-lhr8-1.cdninstagram.com/v/t51.2885-19/s150x150/39810479_537470876724057_5547938285650706432_n.jpg?_nc_ht=scontent-lhr8-1.cdninstagram.com&_nc_ohc=MBSkwH6PVzgAX9iSKsc&oh=39e4f480573fc78cf0afefb8820cdd19&oe=5EB8228C",
"description": "Non deserunt labore sunt ex laboris et adipisicing ullamco officia minim.",
"dateAdded": "0001-01-01T00:00:00",
"isMain": true,
"publicId": null,
"isImage": true,
"mainImage": "https://scontent-lhr8-1.cdninstagram.com/v/t51.2885-19/s150x150/39810479_537470876724057_5547938285650706432_n.jpg?_nc_ht=scontent-lhr8-1.cdninstagram.com&_nc_ohc=MBSkwH6PVzgAX9iSKsc&oh=39e4f480573fc78cf0afefb8820cdd19&oe=5EB8228C",
"userId": 1,
"likers": [
{
"id": 1,
"imageId": 1,
"likerId": 1
}
],
"likes": 0
}
]
Кроме того, в модели "лайки" - это целочисленное значение:
public int Likes { get; set; }