我有一个XmlNodeList xnlSubParam
XmlDocument xDoc = new XmlDocument();
xDoc.Load(somexml);
XmlNode xnParamList = xDoc.SelectSingleNode("//tag");
XmlNodeList xnlSubParam = xnParamList.SelectNodes("subparam");
现在xnlSubParam将包含节点列表
如何获取Node属性以及如何从列表中删除节点。我想删除子参数列表..来自xnlSubparam如何做到这一点? 在我的xml中,我有一个内部命名的元素
<subparam name="test1" displayname="Test1" type="BOOLEAN"/>
<subparam name="test2" displayname="Test2" type="BOOLEAN"/>
<subparam name="test3" displayname="Test3" type="BOOLEAN"/>
答案 0 :(得分:4)
我不知道有任何改变XmlNodeList
本身的方法。我建议您将节点复制到List<XmlNode>
,然后您可以按照正常方式进行变更:
List<XmlNode> nodes = xnlSubParam.Cast<XmlNode>().ToList();
// Now work with nodes
要使用这些LINQ方法,您需要using
指令:
using System.Linq;
当然,这仅适用于.NET 3.5及更高版本(除非您使用的是LINQBridge或类似的东西)。
请注意,我个人在整个过程中使用LINQ to XML:
var doc = XDocument.Load(somexml);
var nodes = doc.Descendants("tag")
.First()
.Elements("subparam")
.ToList();