Silverlight讀取XML相關(guān)操作方法
作者:佚名
Silverlight讀取XML是一個在實際開發(fā)過程中比較常用的一個操作步驟。我們希望大家可以通過這篇文章能夠詳細了解其中的操作技巧。
Silverlight的應(yīng)用方法非常廣泛。我們可以利用這樣的一款多媒體處理工具實現(xiàn)許多功能需求。在這里我們就為大家詳細介紹一下有關(guān)Silverlight讀取XML的相關(guān)操作技巧。希望對又需要的朋友有些幫助。#t#
Silverlight讀取XML的例子是為我的試驗項目"SLShowCase"做的讀取xml的試驗.看到園子里的朋友做到仿163幻燈片的demo就提前發(fā)上來了.
項目的功能是做案例展示.
ok 首先,先定義xml.
- projects.xml
- < ?xml version="1.0" encoding="utf-8" ?>
- < projects>
- < project id="1" title="nasa.wang
@ cnblogs" category="web" hit="23"
createdate="2008-4-9" converpic=
"null" iscommend="true"
votenum="8" score="10">- < /project>
- < /projects>
在sl中定義類.
- public class project
- {
- public int id { get; set; }
- public string title { get; set; }
- public string category { get; set; }
- public int hit { get; set; }
- public DateTime createdate { get; set; }
- public string converpic { get; set; }
- public bool iscommend { get; set; }
- public int votenum { get; set; }
- public int score { get; set; }
- //public IList< pitem> pitems { get; set; }
- //public IList< pcomment>
pcomments { get; set; }- }
使用WebClient來加載數(shù)據(jù).linq來格式化數(shù)據(jù).
- public Page()
- {
- InitializeComponent();
- WebClient client = new WebClient();
- client.DownloadStringAsync(new Uri
(HtmlPage.Document.DocumentUri,
"projects.xml"));- client.DownloadStringCompleted +=
new DownloadStringCompletedEventHandler
(client_DownloadStringCompleted);- }
- void client_DownloadStringCompleted
(object sender, DownloadString
CompletedEventArgs e)- {
- XmlReader reader = XmlReader.Create
(new StringReader(e.Result));- XDocument document = XDocument.Load(reader);
- var projects = from f in document.
Descendants("project")- select new project
- {
- id = int.Parse(f.Attribute("id").Value),
- title = f.Attribute("title").Value,
- category = f.Attribute("category").Value,
- hit = int.Parse(f.Attribute("hit").Value),
- createdate = DateTime.Parse(f.
Attribute("createdate").Value),- converpic = f.Attribute("converpic")
.Value,- iscommend = bool.Parse(f.Attribute
("iscommend").Value),- votenum = int.Parse(f.Attribute("votenum").Value),
- score = int.Parse(f.Attribute("score").Value),
- };
- List< project> _projects = new List< project>();
- _projects.AddRange(projects);
- txtStatus.Text ="read success for "
+ _projects[0].title;- }
Silverlight讀取XML完畢. ;)
責(zé)任編輯:曹凱
來源:
博客園