开发者

How to Search Within a XMl file based on Attributes values...

I am using an xml file from this link..

http://www.goalserve.com/samples/soccer_livescore.xml

.. Lets say "category" is our "Tournament" then I need to search and show the --- 1. The listing of all the "Tournaments" in gridview or datalist. 2. The listing of matches within a selecte开发者_C百科d "Tournament".. 3. The listing of events within the matches etc..

Pls guide me how to achieve this... M using a Dataset.Readxml but then the inner linking of fields become very complex...

Pls guide...

Thanks..n..regards,


The simplest way to do this is with LINQ to XML. Something like this:

var doc = XDocument.Load(url);
var tournaments = doc.Root
                     .Elements("category")
                     .Where(x => (string) x.Attribute("name") == "Tournament")
                     .Single(); // Is there only one matching catgeory?

var matches = tournaments
    .Elements("match")
    .Select(m => new
            {
               LocalTeam = (string) m.Element("localteam").Attribute("name"),
               VisitorTeam = (string) m.Element("localteam").Attribute("name"),
               Events = m.Elements("Events")
                         .Select(e => new
                                 {
                                     Player = (string) e.Attribute("player"),
                                     Type = (string) e.Attribute("type"),
                                     // etc
                                 })
                         .ToList();
            });

How you display that is then up to you. You may want to create your own "normal" types for Event, Match etc rather than using the anonymous types above.

LINQ to XML is by far the simplest way of working with XML that I've used.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜