如何从没有属性的XML文件中获取节点并放入字符串列表

I would like to display the tag names of child nodes without its attributes. Then those tag names (nodes) should be put in a List of string. Here's example of my XML file:

<?xml version="1.0" encoding="UTF-8"?>
<ROOT>
    <CAR>
        <ID>21</ID>
        <MANUFACTURER>Ford</MANUFACTURER>
        <MODEL>Fiesta</MODEL>
    </CAR>
    <CAR>
        <ID>22</ID>
        <MANUFACTURER>Peugeot</MANUFACTURER>
        <MODEL>508</MODEL>
    </CAR>
</ROOT>

因此,我想在控制台输出中获得的效果如下所示:

ID
MANUFACTURER
MODEL

Then I would like to store that ID, MANUFACTURER and MODEL tag names in a List of strings.

这是我到目前为止尝试过的代码:

            XmlDocument xmlDocument = new XmlDocument();
            xmlDocument.PreserveWhitespace = true;
            try
            {
                xmlDocument.Load("XMLFile.xml");
            }
            catch (FileNotFoundException ex)
            {
                Console.WriteLine(ex);
            }

            Console.WriteLine(xmlDocument.OuterXml);

            XmlNodeList nodeList = xmlDocument.SelectNodes("ROOT/CAR");
            foreach(XmlNode node in nodeList)
            {
                Console.WriteLine(node.ChildNodes);
                xmlNodes.Add(node.ChildNodes.ToString());
            }

The problem is that it's not displaying the way I want to. As a result I only get two System.Xml.XmlChildNodes which seems to be corresponding to two <CAR> nodes, instead of its three child nodes, such as ID, MANUFACTURER and MODEL.

System.Xml.XmlChildNodes
System.Xml.XmlChildNodes

将项目添加到列表中基本上会添加与上述相同的内容。

我究竟做错了什么?

评论