2011-11-21 45 views
0

创建使用LINQ对象这是使用XML I'm的样本:在Windows Phone

<?xml version="1.0" encoding="UTF-8"?> 
... 
<tbody> 
<tr class="group"> 

<td class="team"><span>1</span> <a href="link">Jeans</a></td> 
<td class="a"> 
<p>10</p> 
</td> 
<td class="b"> 
<p>20</p> 
</td> 
<td class="team"><span>1</span> <a href="link">T-shirt</a></td> 
<td class="a"> 
<p>20</p> 
</td> 
<td class="b"> 
<p>20</p> 
</td> 
</tr> 

我需要创建一个对象,并使用从XML数据来填充它。 从来就已经与所有属性需要使用这个LINQ代码读取XML我可是类:使用此foreach来

var searched = from c in xml.Descendants("tbody").Descendants("tr").Descendants("td").Descendants("a") 
          from cc in xml.Descendants("tbody").Descendants("tr").Descendants("td") where (cc.Attribute("class").Value == "a") 
          select new Time 
          { 
           name = c.Value, 
           data = cc.Value 
          }; 

林:

foreach (var item in searched) 
      { 
       listBox1.Items.Add(item.name + item.data); 
       listBox1.Items.Add(" "); 

不应该我得到一个像这样的结果?

牛仔裤10 - T恤10

相反即时得到: 牛仔裤10 - 牛仔裤20 - T恤10 - T恤20 -

难道这LINQ说法错了吗?我怎样才能创建一个对象与这些值来自xml?

+0

究竟你是什么试图从你的XML中提取?从我收集的内容来看,你有这样的行['牛仔裤| 10 | 20 | T恤| 20 | 20]'。有更多这样的行吗?你总是想提取标签和第一个数字吗? – madd0

+0

@ madd0是的,我想提取标记中的值以及其在 –

回答