• Silverlight读取xml


    这例子是为我的试验项目"SLShowCase"做的读取xml的试验.看到园子里的朋友做到仿163幻灯片的demo就提前发上来了.
    项目的功能是做案例展示.
    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 { getset; }
            
    public string title { getset; }
            
    public string category { getset; }
            
    public int hit { getset; }
            
    public DateTime createdate { getset; }
            
    public string converpic { getset; }
            
    public bool iscommend { getset; }
            
    public int votenum { getset; }
            
    public int score { getset; }
            
    //public IList<pitem> pitems { get; set; }
            
    //public IList<pcomment> pcomments { get; set; }
        }
    使用WebClient来加载数据.linq来格式化数据.
            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, DownloadStringCompletedEventArgs 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;
            }

    读取完毕.  ;)

    代码下载:https://files.cnblogs.com/nasa/silverlight/readxmlfile.zip

    作者:nasa
    出处:http://nasa.cnblogs.com
    联系:nasa_wz@hotmail.com
    QQ:12446006
  • 相关阅读:
    万豪酒店数据库遭入侵 5亿顾客信息或泄露
    网络信息安全中最热门的果然是它
    有奖问卷调查丨你有意见?可以提啊!
    业务逻辑漏洞探索之绕过验证
    一个月薪两万的Web安全工程师要掌握哪些技能?
    phpcms2008远程代码执行漏洞
    BASE64编码原理分析脚本实现及逆向案例
    源码级调试的XNU内核
    使用RSA加密在Python中逆向shell
    感恩节活动中奖名单 i春秋喊你领礼物啦!
  • 原文地址:https://www.cnblogs.com/nasa/p/1141860.html
Copyright © 2020-2023  润新知