0

XML フィードから特定のフィールドを含む新しい XML ドキュメントをセットアップする可能性はありますか?

public string xmlResult;
  public void Page_Load(object sender, EventArgs args){
    string url = string.Format("http://search.twitter.com/search.atom?q=test&show-user=true&rpp=10");

  HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;

  using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
  {
    StreamReader reader = new StreamReader(response.GetResponseStream());
    xmlResult = reader.ReadToEnd();
    Console.WriteLine("OUTPUT: " + xmlResult);
  }
      XmlDocument doc = new XmlDocument();
      doc.LoadXml(xmlResult);
      Response.ContentType = "text/xml";
      Response.Write(doc.OuterXml);
}

以下の例のような特定のフィールドを持つ新しい XML ドキュメントを作成したいと思います。

<feed>
    <entry>
            <content></content>
            <author></author>
            <created_time></created_time>
    </entry>
</feed>
4

1 に答える 1

1

LinqToXml の方が使いやすいと思います...

var xDoc = XDocument.Load("http://search.twitter.com/search.atom?q=test&show-user=true&rpp=10");
XNamespace ns = "http://www.w3.org/2005/Atom";

XElement feeds = new XElement("feed", 
                        xDoc.Descendants(ns + "entry")
                            .Select(e=>new XElement("entry",
                                                new XElement("id", e.Element(ns + "id").Value), 
                                                new XElement("author",e.Element(ns + "author").Element(ns + "name").Value),
                                                new XElement("created_time",e.Element(ns + "published").Value)
                                        )
                            )
                );

string xmlstr = feeds.ToString();
于 2013-05-21T08:49:44.563 に答える