首页 > 解决方案 > XElement C#:如何更改 XElement 的值?

问题描述

我有一个具有某些价值的元素,例如:

<Element>
     <I id="I01" class="" /> Some Text
</Element>

如何保留“I”元素但更改元素标签中的“某些文本”?

标签: c#xelement

解决方案


您可以找到它的正确XText子节点Element并设置它的值。这是一个示例,假设它是您感兴趣的第一个节点: XText

using System;
using System.Linq;
using System.Xml.Linq;

class Test
{
    static void Main()
    {
        XElement element= XElement.Parse(@"
<Element>
    <I id=""I01"" class="""" /> Some Text
</Element>");
        element.DescendantNodes().OfType<XText>().First().Value = "New value";
        Console.WriteLine(element);
    }
}

输出:

<Element>
  <I id="I01" class="" />New value</Element>

推荐阅读