WP7如何解析XML?

问题描述:

在WP7我想解析XML标签WP7如何解析XML?

.XML:

<top> 
<value name="Group A"> 
<team position="1" name="india" won="10" lose="5"/> 
<team position="2" name="pakistan" won="5" lose="5"/> 
</value> 

<value name="Group B"> 
<team position="1" name="Aus" won="10" lose="5"/> 
<team position="2" name="newzeland" won="5" lose="5"/> 
</value> 
</top> 

我想是这样输出,

Group A 

1 India 10 5 
2 pak 5 10 

Group B 

1 Aus  5 5 
2 Neszeland 5 5 

我使用解析器这样,

list = (from story in xmlTweets.Descendants("value") 

          select new ViewModel 
          { 
           group= story.Attribute("name").Value, 

          }).ToList(); 

list1 = (from story in xmlTweets.Descendants("team") 

          select new ViewModel 
          { 
           position= story.Attribute("position").Value, 
name= story.Attribute("name").Value, 
won= story.Attribute("won").Value, 
lose= story.Attribute("lose").Value, 

          }).ToList(); 

输出:

Group A 

Group B 

1 India 10 5 
2 pak 5 10 

1 Aus  5 5 
2 Neszeland 5 5 

请告诉我一些想法做到这一点。

谢谢。

+0

您所需的输出看起来像您的实际输出...有什么不对? –

+0

@Jon,他的输出缺少分组机制。 –

+0

@Jon分组打印列表后首先打印。我想要小组和名单。 – Jeeva

目前你有两个单独的列表 - 一个用于组和一个用于团队。它在我看来像你的视图模型需要更丰富 - 如:

list = xml.Descendants("value") 
      .Select(group => new GroupViewModel 
      { 
       Group = (string) group.Attribute("name"), 
       Results = group.Elements("team") 
          .Select(team => new TeamViewModel 
          { 
           Position = (int) team.Attribute("position"), 
           Name = (string) team.Attribute("name"), 
           Won = (int) team.Attribute("won"), 
           Lost = (int) team.Attribute("lose") 
          }) 
          .ToList() 
      }) 
      .ToList(); 
+0

结果是什么?它是字符串还是列表? – Jeeva

+0

@Jeeva:这是一个TeamViewModel引用列表(注意ToList方法),它应该在你的视图模型中。你没有说任何关于你如何显示这些结果,这使得它很难给出任何比这更具体的...... –

+0

来了这个错误不能隐式转换类型'System.Collections.Generic.List '为'string ' – Jeeva