private void DeserializeFoundReviews(IOrderedQueryable<Review> reviewsInPeriod, IList<FoundReviewTransferObject> reviewsFound)
        {
            foreach (Review review in reviewsInPeriod)
            {
                FoundReviewTransferObject foundReview = new FoundReviewTransferObject();
                foundReview.Date = review.DateOfCreation;
                foundReview.Content = review.Content;
                foundReview.BookTitle = review.Book.Title;
                foundReview.BookIsbn = review.Book.ISBN;
                foundReview.BookUrl = review.Book.WebSite;
                if (review.Book.Authors.Count != 0)
                {
                    var authorNames = review.Book.Authors
                        .OrderBy(a => a.Name).Select(a => a.Name);

                    foundReview.BookAuthors = string.Join(", ", authorNames);
                }

                reviewsFound.Add(foundReview);
            }
        }
        static void WriteFoundReview(XmlTextWriter writer, FoundReviewTransferObject review)
        {
            writer.WriteStartElement("review");

            if (review.Date != null)
            {
                writer.WriteElementString("date", review.Date.Value.ToString(DateFormat));
            }

            writer.WriteElementString("content", review.Content);

            writer.WriteStartElement("book");
            writer.WriteElementString("title", review.BookTitle);
            if (review.BookAuthors != null)
            {
                writer.WriteElementString("authors", review.BookAuthors);
            }

            if (review.BookIsbn != null)
            {
                writer.WriteElementString("isbn", review.BookIsbn);
            }

            if (review.BookUrl != null)
            {
                writer.WriteElementString("url", review.BookUrl);
            }

            writer.WriteEndElement();

            writer.WriteEndElement();
        }