1
for(int sp_range = int.Parse(myParser.GetKey("SP_Range")); sp_range < int.Parse(myParser.GetKey ("EP_Range")); sp_range++)
{
  cboPort.Items.Add(sp_range.ToString());

  main.XPathSelectElement("//ip_addresses").SetAttributeValue("id", sp_range.ToString());

  main.Save(xmlpath);
}

我正在循环一个设定的数字范围,当我在循环时,我正在递增一个迭代器我希望将迭代器 1 到 59 的值作为 id 值添加到我的 xml 文档中它保存 id 值但只添加到一个名为 ip_addresses 的元素,而不是将其添加到所有 ip_addresses 子元素中,它仅将其添加到 1 和迭代器的最后一个计数值,即 59 所以我使用正确的 Xpath 获取命名元素 ip_addresses 的所有子元素,但它的唯一访问权限Row 的父元素的第一个子元素。

4

1 回答 1

1
for (int sp_range = int.Parse(myParser.GetKey("SP_Range")); sp_range < int.Parse(myParser.GetKey("EP_Range")); sp_range++)
{
    cboPort.Items.Add(sp_range.ToString()); //Adds the load of values

    foreach (XElement xml in main.XPathSelectElements("/Row/ip_addresses"))
    {
        xml.SetAttributeValue("id", sp_range++);//You have to re-iterate for the set# Nodes
    }

}

main.Save(xmlpath);

如果您需要知道如何做到这一点,这很有效,我一夜之间想通了

于 2013-05-30T23:11:00.013 回答