Beispiel #1
0
        private void GetReqeustStreamCallback(IAsyncResult asynchronousResult)
        {
            try
            {
                WebResponse response = ((HttpWebRequest)asynchronousResult.AsyncState).EndGetResponse(asynchronousResult);
                StreamReader reader = new StreamReader(response.GetResponseStream());
                string responseString = reader.ReadToEnd();

                reader.Close();
                var dom = XDocument.Parse(responseString);

                var items = from item in dom.Descendants("post")
                            select new Me2View
                            {
                                id = (string)item.Element("post_id"),
                                name = (string)item.Element("author").Element("nickname"),
                                text = (string)item.Element("body").Value,
                                tag = (string)item.Element("tagText"),
                                dtime = (DateTime)item.Element("pubDate"),
                                thumb_img = (string)item.Element("author").Element("face"),
                                media_obj = (Object)item.Element("media"),
                                me2 = (string)item.Element("metooCount").Value,
                                reply = (string)item.Element("commentsCount").Value,
                                reply_visib = (string)item.Element("commentClosed").Value,
                            };

                lists = new List<Me2View>();
                DateTime now = DateTime.Now;
                foreach (Me2View item in items)
                {
                    XElement media = XElement.Parse(item.media_obj.ToString());

                    Me2View mv = new Me2View();
                    mv.img_vis = Visibility.Collapsed;
                    if (media.Element("me2photo") != null)
                    {
                        mv.img_vis = Visibility.Visible;
                        mv.photo = (string)media.Element("me2photo").Element("photoUrl");
                    }
                    TimeSpan tsp = now - item.dtime;
                    mv.id = item.id;
                    mv.name = item.name;
                    mv.me2 = item.me2;
                    mv.thumb_img = item.thumb_img;
                    mv.text = HtmlRemoval.StripTagsRegexCompiled(item.text);
                    mv.tag = item.tag;
                    mv.text = mv.text.Replace("&lt;", "<");
                    mv.text = mv.text.Replace("&gt;", ">");

                    if (tsp.Days > 0)
                        mv.time = tsp.Days + "일 전";
                    else if (tsp.Hours > 0)
                        mv.time = tsp.Hours + "시간 전";
                    else
                        mv.time = tsp.Minutes + "분 전";
                    mv.me2tag = "미투 " + item.me2 + "개  댓글";
                    if (item.reply_visib == "true")
                        mv.me2tag += "닷힘";
                    else
                    {
                        mv.me2tag += item.reply + "개";
                    }
                    mv.me2tag += "\n";
                    lists.Add(mv);

                }
                Dispatcher.BeginInvoke(delegate()
                {
                    if (lists.Count > 0)
                    {
                        loadtext.Visibility = Visibility.Collapsed;
                        pgbar.Visibility = Visibility.Collapsed;
                        listdata.ItemsSource = lists;
                        listdata.Visibility = Visibility.Visible;
                    }
                    else
                    {
                        pgbar.Visibility = Visibility.Collapsed;
                        loadtext.Text = "No items";
                    }
                });

            }
            catch (WebException ex)
            {
                Dispatcher.BeginInvoke(delegate()
                {
                    MessageBox.Show("Progress isn't completed. Please retry login", "Sorry", MessageBoxButton.OK);
                    this.NavigationService.GoBack();
                });
            }
        }
Beispiel #2
0
        private void GetReqeustStreamCallback3(IAsyncResult asynchronousResult)
        {
            try
            {
                WebResponse response = ((HttpWebRequest)asynchronousResult.AsyncState).EndGetResponse(asynchronousResult);
                StreamReader reader = new StreamReader(response.GetResponseStream());
                string responseString = reader.ReadToEnd();

                reader.Close();
                var dom = XDocument.Parse(responseString);

                var items = from item in dom.Descendants("commentToMe")
                            select new Me2View
                            {
                                id = (string)item.Element("post").Element("post_id").Value,
                                name = (string)item.Element("comment").Element("author").Element("nickname").Value,
                                text = (string)item.Element("comment").Element("body").Value,
                                tag = (string)item.Element("post").Element("body"),
                                dtime = (DateTime)item.Element("comment").Element("pubDate"),
                                thumb_img = (string)item.Element("comment").Element("author").Element("face"),
                            };

                lists = new List<Me2View>();
                DateTime now = DateTime.Now;
                foreach (Me2View item in items)
                {
                    Me2View mv = new Me2View();
                    TimeSpan tsp = now - item.dtime;
                    mv.id = item.id;
                    mv.name = item.name;
                    mv.thumb_img = item.thumb_img;
                    mv.text = HtmlRemoval.StripTagsRegexCompiled(item.text);
                    mv.tag = HtmlRemoval.StripTagsRegexCompiled(item.tag)+"\n";
                    mv.text = mv.text.Replace("&lt;", "<");
                    mv.text = mv.text.Replace("&gt;", ">");
                    lists.Add(mv);

                }
                Dispatcher.BeginInvoke(delegate()
                {
                    if (lists.Count > 0)
                    {
                        loadtext.Visibility = Visibility.Collapsed;
                        pgbar.Visibility = Visibility.Collapsed;
                        listdata2.ItemsSource = lists;
                        listdata2.Visibility = Visibility.Visible;
                    }
                    else
                    {
                        pgbar.Visibility = Visibility.Collapsed;
                        loadtext.Text = "No items";
                    }
                });

            }
            catch (WebException ex)
            {
                Dispatcher.BeginInvoke(delegate()
                {
                    MessageBox.Show("Progress isn't completed. Please retry login", "Sorry", MessageBoxButton.OK);
                    this.NavigationService.GoBack();
                });
            }
        }