c#返回.xml到类
本文关键字:到类 xml 返回 | 更新日期: 2023-09-27 18:15:18
我试图从friendfeed API给出一个信息。
正如您在代码中看到的,我使用HttpRequest来获取信息。没关系。
在那之后,我正在用LINQ读取XML。
但是现在我创建了一个"feed"类,我想为每个返回值(I from 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();
}
}
}
如果您认为这样阅读(动态提要类-不声明feed
, entry
, via
和from
类):
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
的条目