1

我正在尝试迭代 XElements,以便可以在子元素满足条件的地方更新它们。我查看了其他帖子的答案,据我所知,我使用的方法应该有效(但没有)。

第一行代码选择要更新的元素(这按预期工作)。如果我在循环中放置断点,将鼠标悬停在“existingContact”上会显示正确的联系人元素。但是,“Debug.WriteLine(existingName)”行始终输出集合中第一个元素的值。

非常感谢任何关于为什么会发生这种情况(以及如何解决它)的解释!

IEnumerable<XElement> existingContacts = rootXElement.XPathSelectElements(namespacedXPath, _namespaceManager);

foreach (XElement existingContact in existingContacts)
{
    string nameNodePath = getNamespacedXPath("/CI_ResponsibleParty/individualName");
    string existingName = existingContact.XPathSelectElement(nameNodePath, _namespaceManager).Value;
    Debug.WriteLine(existingName);
}
4

0 回答 0