C#返回.XML类

我特林给来自FriendFeed的API的信息。

正如你在代码中看到的,我使用一个HttpRequest获取信息。 没关系。

在那之后我读XML只是LINQ罚款。

但现在我创建了一个“喂”级和我想创建为每一位返回的值(我是从finaltoclass)的对象。

我怎样才能做到这一点?

你能不能帮我这个?

谢谢。

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using System.IO; using System.Xml; using System.Xml.Linq; namespace ConsoleApplication1 { class Program { class feed { } public class entry { string body; string id; string url; public entry(string a, string b, string c) { body = a; id = b; url = c; } } static void Main(string[] args) { string username = "semihmasat"; WebRequest ffreq = WebRequest.Create("http://friendfeed-api.com/v2/feed/" + username + "?format=xml"); WebResponse ffresp = ffreq.GetResponse(); Console.WriteLine(((HttpWebResponse)ffresp).StatusDescription); Stream stream = ffresp.GetResponseStream(); StreamReader reader = new StreamReader(stream); string respfinal = reader.ReadToEnd(); reader.Close(); XElement final = XElement.Load("http://friendfeed-api.com/v2/feed/" + username + "?format=xml"); var finaltoclass = from i in final.Elements("entry") select i; foreach (XElement i in finaltoclass) { string body= i.Element("body").Value; string id= i.Element("id").Value; string url= i.Element("url").Value; Console.WriteLine("{0},{1},{2}", body, id, url); } Console.ReadLine(); } } }

--------------解决方案-------------

如果你觉得阅读这种方式(动态饲料级-不宣feedentryviafrom班):

dynamic feed = new Uri("http://friendfeed-api.com/v2/feed/" + username + "?format=json").GetDynamicJsonObject();
foreach (var entry in feed.entries)
{
Console.WriteLine(entry.from.name + "> " + entry.body + " " + entry.url);
}

你将需要Json.Net这个扩展类

让我们试试这个代码

var finaltoclass = from i in final.Elements("entry")
select new entry (i.Element("body").Value, i.Element("id").Value, i.Element("url").Value );

您需要添加到ObservableCollection条目。

分类:C# 时间:2012-07-08 人气:0
本文关键词: 的LINQ to XML,XML解析
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.399 (s). 10 q(s)