我想使用.InnerText,但它显示节点的文本+子节点的所有文本。里面的例子

时间:2016-03-15 18:55:12

标签: c# xml

假设我有这个XML:

    <ID>123
        <Name>ABC</Name>
        <Age>30</Age>
    </ID>

我想要像.InnerText那样只显示123而不是123 ABC 30

1 个答案:

答案 0 :(得分:2)

您可以使用Linq2Xml ..

var xDoc = XDocument.Load(filename);
var idtext = xDoc.XPathSelectElement("//ID")
            .Nodes()
            .OfType<XText>()
            .FirstOrDefault()?.Value.Trim();

var idtext = xDoc.XPathSelectElement("//ID")
            .FirstNode
            .ToString().Trim();