2011-07-30 65 views
0

我使用從這個鏈接的XML文件..如何搜尋在基於屬性值的XML文件...

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

.. 比方說,「類別」是我們的「對抗賽」然後 我需要搜索並顯示--- 1.所有「錦標賽」列表gridview或datalist。 2.在選定的「錦標賽」內的比賽列表.. 3.比賽內的事件列表等。

請指導我如何實現此... M使用Dataset.Readxml,但然後場變得非常複雜的內連接...

PLS導...

Thanks..n..regards,

+0

@Jon ..Sry buddy..acktly m不是精通LINQ to XML ..是否有其他的方式來搜索xml ...像這樣... XmlNodeList xnodeMatches = xdoc.SelectNodes(「// category [@ name ='「+ tournament +'']/id [@ id ='」+ tournamentID +'']/match「); – vikas

回答

1

要做到這一點,最簡單的方法是使用LINQ到XML。類似這樣的:

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(); 
      }); 

如何顯示,然後由您決定。您可能希望爲Event,Match等創建自己的「正常」類型,而不是使用上面的匿名類型。

LINQ to XML是迄今爲止我使用過的最簡單的XML工作方式。

+0

Hi..Jon ..感謝您的快速回復..嘗試它..將讓你的kknw .. – vikas

相關問題