【发布时间】:2012-09-06 03:35:46
【问题描述】:
我的 XML 响应:
<Items>
<Item>
<ASIN>1212121</ASin>
<ItemAttributes>
<Title>aaaa</Title>
</ItemAttributes>
<Variations>
<Item>
<ItemAttributes>
<color>Red</color>
</ItemAttributes>
</Item>
Item>
<ItemAttributes>
<color>yellow</color>
</ItemAttributes>
</Item>
Item>
<ItemAttributes>
<color>pink</color>
</ItemAttributes>
</Item>
</Variations>
</Item>
<Item>
ASIN>1211111</ASin>
<ItemAttributes>
<Title>bbb</Title>
</ItemAttributes>
<Variations>
<Item>
<ItemAttributes>
<color>Green</color>
</ItemAttributes>
</Item>
</Variations>
</Item>
</Items>
在这里,我每页收到十个项目。我现在只需要获取每个项目的颜色。 我使用了以下代码。
var Color = xd.Descendants(ns + "Items").Elements(ns+"Item").Elements(ns + "Variations").Elements(ns + "Item").Elements(ns + "ItemAttributes").Elements(ns + "Color").Select(cl => new
{
clr = cl.Value
}).ToList();
这个 Xml 返回所有 Item 的颜色。首先它是红色的。 第二个是绿色的。它上升到第 10 项。 现在我上面的 LINQ 代码为所有项目返回颜色。它返回为红色、黄色、粉红色、绿色.. 但我必须分别显示第一项(红色)的颜色。
最后, 我必须显示项目->项目->变化->项目->项目属性->颜色 输出:对于第一个项目。,红色,黄色,粉红色 对于第二项,绿色,..
【问题讨论】:
-
哪个项?您没有向我们提供有关您要做什么的足够信息。
-
那是亚马逊的回应。,是服装。,
-
不,我认为你错过了我的意思。你写过:“我怎样才能得到单个项目的关联颜色”——不知道你有什么来代表那个项目,我们不可能回答这个问题。
标签: c# xml linq linq-to-xml