/// <summary> /// Rotates the specified media. /// </summary> /// <param name="media">The media.</param> /// <param name="user">The user.</param> /// <param name="rotate">The rotate.</param> private void Rotate(IEnumerable <MediaFile> media, User user, Func <byte[], byte[]> rotate) { foreach (MediaFile file in media) { byte[] bytes = GetFileBytes(file, user); bytes = rotate(bytes); string contentType = GetContentType(file); _fileService.AddFile(user.Username, file.FilePath, contentType, bytes); _mediaFileRepository.UpdateDimension(file.FileId, file.Height, file.Width); } }