public double GetRating(Photo photo) { int rating = 0, count = 0; foreach(var r in photo.Raitings) { rating += r.Value; count++; } return count == 0 ? 0 : (double)rating / count; }
public void UpdateOrAdd(Rating rating, Photo photo) { Rating r = photo.Raitings.FirstOrDefault(rt=>rt.User == rating.User); if (r != null) { r.Value = rating.Value; db.Entry(r).State = EntityState.Modified; } else photo.Raitings.Add(rating); }
public void CreateNewPhoto(IEnumerable<byte[]> photos, string albumName, string login) { User user = unitOfWork.Users.GetByLogin(login); Album album = user.Albums.FirstOrDefault(a => a.Name == albumName); Tag tag = unitOfWork.Tags.GetDefoultTag(); if (album != null) { foreach (var photoByte in photos) { Photo p = new Photo { Image = photoByte, Album = album }; unitOfWork.Photos.Create(p); tag.Photos.Add(p); } } unitOfWork.Save(); }
public int GetRatingPhotoUsers(Photo photo, User user) { Rating r = photo.Raitings.FirstOrDefault(re => re.User == user); return r == null ? 0 : r.Value; }