XML Query (Xpath)



我正在尝试获取有关Spesific演员的所有详细信息,并且要找到这个Spesific Actors,我拥有的功能可以回收XMLDOC和2个字符串参数:名字和姓氏,以及在我的代码中在下面,我总是得到0个nodeeslements。有人可以告诉我我做错了什么吗?

 public XmlNodeList Query3(XmlDocument xmlDoc, String actorFirstName, String actorLastName)// returns all the awards of all TV-shows of an actor
        {
string s = "Netflix/movies/movie/actors/actor[first-name="+actorFirstName+"last-name="+actorLastName+"]";
            XmlNodeList xmlNodeList = xmlDoc.SelectNodes(s);
            foreach (XmlNode x1 in xmlNodeList)
            {
                Console.WriteLine(x1.InnerText);
            }
            return xmlNodeList;
}

xmldoc:

<?xml version="1.0"?>
<Netflix>
  <movies>
    <movie>
      <name>Mister Glass</name>
      <genre>Drama</genre>
      <year>2019</year>
      <actors>
        <actor>
          <first-name>James</first-name>
          <last-name>McAvoy</last-name>
          <year-of-birth>1979 </year-of-birth>
          <awards>
            <award>
              <category>Alliance of Women Film Journalists</category>
              <year>2007</year>
            </award>
            <award>
              <category>ALOS Awards</category>
              <year>2018</year>
            </award>
          </awards>
        </actor>
        <actor>
          <first-name>Bruce</first-name>
          <last-name>Willis</last-name>
          <year-of-birth>1955 </year-of-birth>
          <awards>
            <award>
              <category>American gun rights advocates</category>
              <year>2007</year>
            </award>
            <award>
              <category>American film producers</category>
              <year>2013</year>
            </award>
            <award>
              <category>American male video game actors</category>
              <year>2012</year>
            </award>
            <award>
.
.
.
.

更改

[first-name="+actorFirstName+"last-name="+actorLastName+"]";

to

[first-name="+actorFirstName+" and last-name="+actorLastName+"]";
                              ^^^^^

最新更新