예제 #1
0
    protected void downloadUpdates_Click(object sender, EventArgs e)
    {
        var            twitter       = new WebConsumer(TwitterConsumer.ServiceDescription, this.TokenManager);
        XPathDocument  updates       = new XPathDocument(TwitterConsumer.GetUpdates(twitter, this.AccessToken).CreateReader());
        XPathNavigator nav           = updates.CreateNavigator();
        var            parsedUpdates = from status in nav.Select("/statuses/status").OfType <XPathNavigator>()
                                       where !status.SelectSingleNode("user/protected").ValueAsBoolean
                                       select new {
            User   = status.SelectSingleNode("user/name").InnerXml,
            Status = status.SelectSingleNode("text").InnerXml,
        };

        StringBuilder tableBuilder = new StringBuilder();

        tableBuilder.Append("<table><tr><td>Name</td><td>Update</td></tr>");

        foreach (var update in parsedUpdates)
        {
            tableBuilder.AppendFormat(
                "<tr><td>{0}</td><td>{1}</td></tr>",
                HttpUtility.HtmlEncode(update.User),
                HttpUtility.HtmlEncode(update.Status));
        }
        tableBuilder.Append("</table>");
        resultsPlaceholder.Controls.Add(new Literal {
            Text = tableBuilder.ToString()
        });
    }
예제 #2
0
        public string GetTweets()
        {
            // Uppgift 6:
            var            twitter       = new WebConsumer(TwitterConsumer.ServiceDescription, this.TokenManager);
            XPathDocument  updates       = new XPathDocument(TwitterConsumer.GetUpdates(twitter, this.AccessToken).CreateReader());
            XPathNavigator nav           = updates.CreateNavigator();
            var            parsedUpdates = from status in nav.Select("/statuses/status").OfType <XPathNavigator>()
                                           where !status.SelectSingleNode("user/protected").ValueAsBoolean
                                           select new
            {
                User   = status.SelectSingleNode("user/name").InnerXml,
                Status = status.SelectSingleNode("text").InnerXml,
            };

            StringBuilder tableBuilder = new StringBuilder();

            tableBuilder.Append("<table><tr><td>Name</td><td>Update</td></tr>");

            foreach (var update in parsedUpdates)
            {
                tableBuilder.AppendFormat(
                    "<tr><td>{0}</td><td>{1}</td></tr>",
                    HttpUtility.HtmlEncode(update.User),
                    HttpUtility.HtmlEncode(update.Status));
            }
            tableBuilder.Append("</table>");
            return(tableBuilder.ToString());
        }