C# 如何将xmlnodeList复制到xmlNode和xmlelement中
帮助我写出代码: 1.我有一个xml文件,我想根据节点类型读取并过滤xmlnodeList中的节点(完成)。 2.现在,我必须在根节点之前创建一个节点(比如Board),在Board节点下创建xmlElement,比如Board0,Board1。。具有某些属性(完成)。 3.现在在Board0中,我想复制xmlnodeList(必须编写代码) 假设我的xml文件如下所示:C# 如何将xmlnodeList复制到xmlNode和xmlelement中,c#,asp.net,xml,C#,Asp.net,Xml,帮助我写出代码: 1.我有一个xml文件,我想根据节点类型读取并过滤xmlnodeList中的节点(完成)。 2.现在,我必须在根节点之前创建一个节点(比如Board),在Board节点下创建xmlElement,比如Board0,Board1。。具有某些属性(完成)。 3.现在在Board0中,我想复制xmlnodeList(必须编写代码) 假设我的xml文件如下所示: Switchboard Version="1.4"> <Project Port="7353" WDRemo
Switchboard Version="1.4">
<Project Port="7353" WDRemotePort="11160" WatchDogSourceAddress="256" IOProtocolVersion="V3" />
<Controls CountControls="220">
<IOControl Type="AnalogInput" </IOControl>
<IOControl Type="DigitalInput" </IOControl>
<IOControl Type="DigitalInput" </IOControl>
<IOControl Type="DigitalInput" </IOControl>
</Controls>
</Switchboard>
<Switchboard Version="1.4">
<Project Port="7353" WDRemotePort="11160" WatchDogSourceAddress="256" IOProtocolVersion="V3" />
<Controls CountControls="4">
<IOControl Type="AnalogInput" </IOControl>
<IOControl Type="DigitalInput" </IOControl>
<IOControl Type="DigitalInput" </IOControl>
<IOControl Type="DigitalInput" </IOControl>
</Controls>
<Boards CountBoards="3">
<Board0 Name="Alm_HP_RE" BoardWidth="1800" BoardHeigth="1800" Image="" ImageLayout="None">
<IOControl Type="DigitalInput" </IOControl>
<IOControl Type="DigitalInput" </IOControl>
<IOControl Type="DigitalInput" </IOControl>
</Board0>
<Board1 Name="Alm_HP_RE" BoardWidth="1800" BoardHeigth="1800" Image="" ImageLayout="None">
<IOControl Type="AnalogInput" </IOControl>
</Board1>
<Board2 Name="Alm_HP_RE" BoardWidth="1800" BoardHeigth="1800" Image="" ImageLayout="None">
</Board2>
</Boards>
</Switchboard>
交换机版本=“1.4”>
这只是第三个问题的答案[“现在在Board0中,我想复制我的xmlnodeList”] 如何将过滤后的XMlNodeList复制到Board0中 1.使用XPATH选择所需的节点
var nodeList = hardwareDoc.SelectNodes("//IOControl[@Type='DigitalInput']");
2.使用foreach循环将所选节点列表附加到board0 XmlElement
foreach (XmlNode node in nodeList)
{
elem.AppendChild(node);
}
这只是第三个问题的答案[“现在在Board0中,我想复制我的xmlnodeList”] 如何将过滤后的XMlNodeList复制到Board0中 1.使用XPATH选择所需的节点
var nodeList = hardwareDoc.SelectNodes("//IOControl[@Type='DigitalInput']");
2.使用foreach循环将所选节点列表附加到board0 XmlElement
foreach (XmlNode node in nodeList)
{
elem.AppendChild(node);
}
您的问题是什么?无法将复制列表的逻辑放入XmlElementforeach(XMLNodem in _AnalogInputList){elem.AppendChild(m);}获取异常:要插入的节点来自不同的文档上下文。但它们来自同一份文件。请提出建议。您有什么问题吗?无法将复制列表的逻辑放入XmlElementforeach(XmlNode m in_AnalogInputList){elem.AppendChild(m);}获取异常:要插入的节点来自不同的文档上下文。但它们来自同一份文件。请建议。