使用LINQ在节点中选择两个属性

时间:2009-02-27 03:04:15

标签: c# .net linq linq-to-xml

我有以下节点:

<NodeA desc="Cheap Item 1" category="Cooking" />

我使用以下选项选择了'category'属性:

.Where(attr => attr.Name == "category")
.Select(attr => attr.Value);

如何选择'desc'和'category'现在

1 个答案:

答案 0 :(得分:1)

编辑我认为我实际上误解了您的原始问题。下面的代码应该在节点列表中找到适当的节点,并选择它的desccategory属性。

var contents = nodes.Where( n => n.Name == "NodeA")
                    .Select( node => new { desc = node.Attribute("desc")
                                                      .Value,
                                          category = node.Attribute("category")
                                                          .Value
                                         }
                     );

var desc = contents.desc;
var category = contents.category;