示例#1
0
        private void ReviewsBtn_Click(object sender, EventArgs e)
        {
            var allReviews = Deserializer <Review> .DeserializeFile(@"..\..\Resources\Reviews.txt");

            List <string> users = new List <string>
            {
                CurrentUser.ReturnCurrentUserEmail()
            };

            var query =
                users.GroupJoin(allReviews,
                                user => user,
                                review => review.Author,
                                (user, reviewCollection) => new
            {
                UserName = user,
                Reviews  = reviewCollection.Select(review =>
                                                   new
                {
                    subject = review.Subject.Name,
                    comment = review.Comment,
                    rating  = review.Rating
                })
            });

            MyReviews myReviewsForm = new MyReviews();

            myReviewsForm.usernameLabel.Text = CurrentUser.ReturnCurrentUserEmail();

            // Enumerate results.
            foreach (var person in query)
            {
                foreach (var item in person.Reviews)
                {
                    myReviewsForm.reviewListView.Items.Add(new ListViewItem(new string[] { item.subject, item.comment, item.rating.ToString() }));
                }
            }
            myReviewsForm.Show();
        }