.Net C# 操作 XML 的问题

现在需求是从前台,下拉菜单中,选择某种图书的分类后,点搜索,将该分类下的图书信息以列表形式显示出来;

下面的XML是精简出来的大致结构,现实中XML数据比这个多一些;

我现在根据前台传过来的分类ID,检索到图片分类的这一节点:

XmlNodeList xNodeList = xmlDoc.SelectNodes("//ns:Category/ns:Class[contains(ns:Id,'分类ID值')]", nsMgr);

接下来我就迷茫了,我怎么才能获得到该分类下那些图书<book>的列表数据啊?

请高手们给点建议和思路!

XML数据结构:

<?xml version="1.0" encoding="gb2312"?>
<BookStore>
    <ShopName>中原路店</ShopName>
    <TotalAmount>2000</TotalAmount>
    <Category>
        <Class>
            <Id>1</Id>
            <Name>文学类</Name>
        </Class>
        <Book>
            <Id>1001</Id>
            <BookName>书名111</BookName>
            <Price>20.00</Price>
            <ReadList>
                <Splitime>
                    <Time>2020/10/1 17:00</Time>
                    <Name>张三</Name>
                </Splitime>
                <Splitime>
                    <Time>2020/10/2 17:00</Time>
                    <Name>李四</Name>
                </Splitime>
            </ReadList>
        </Book>
        <Book>
            <Id>1002</Id>
            <BookName>书名2222</BookName>
            <Price>20.00</Price>
            <ReadList>
                <Splitime>
                    <Time>2020/10/3 17:00</Time>
                    <Name>王五</Name>
                </Splitime>
                <Splitime>
                    <Time>2020/10/4 17:00</Time>
                    <Name>赵六</Name>
                </Splitime>
            </ReadList>
        </Book>
    </Category>
    <Category>
        <Class>
            <Id>2</Id>
            <Name>动漫类</Name>
        </Class>
        <Book>
            <Id>1001</Id>
            <BookName>书名333</BookName>
            <Price>20.00</Price>
            <ReadList>
                <Splitime>
                    <Time>2020/10/1 17:00</Time>
                    <Name>张三</Name>
                </Splitime>
                <Splitime>
                    <Time>2020/10/2 17:00</Time>
                    <Name>李四</Name>
                </Splitime>
            </ReadList>
        </Book>
        <Book>
            <Id>1002</Id>
            <BookName>书名444</BookName>
            <Price>20.00</Price>
            <ReadList>
                <Splitime>
                    <Time>2020/10/3 17:00</Time>
                    <Name>王五</Name>
                </Splitime>
                <Splitime>
                    <Time>2020/10/4 17:00</Time>
                    <Name>赵六</Name>
                </Splitime>
            </ReadList>
        </Book>
    </Category>
</BookStore>


foreach(XmlNode xn in xNodeList)

if (xn.ChildNodes != null && xn.ChildNodes.Count >= 0)
{
   foreach (XmlNode cNode in xn.ChildNodes)
   {
       if (cNode.Name != null && cNode.Name == "Id")   //这里去赋值就行了
       //其他的以此类推
   }
}

 

https://blog.csdn.net/u011555996/article/details/52638902 参考下这篇文章,读取xml文件方式还是比较多的