C # XmlDocument SelectNodes не работает

Я хочу получить значение из файла XML, но мне не удалось. Не могли бы вы помочь мне указать на проблему? Потому что я уже очень старался тестировать и гуглить, но до сих пор не могу определить проблему.

XML:

<?xml version="1.0" encoding="utf-8" ?> 
<Contacts>
  - <Contact>
    <ID>xxx</ID> 
      <AutoUpdateEnabled>false</AutoUpdateEnabled> 
      <LastChanged>2013-05-29T01:53:59.4470000Z</LastChanged> 
    - <Profiles>
        - <Personal>
              <FirstName>My First Name</FirstName> 
              <LastName>My Last Name</LastName> 
              <UniqueName>My Unique Name</UniqueName> 
              <SortName></SortName> 
              <DisplayName>My Display Name</DisplayName> 
          </Personal>
    </Profiles>
    - <Phones>
        - <Phone>
          <ID>3</ID> 
          <PhoneType>Mobile</PhoneType> 
          <Number>000-0000000</Number> 
          <IsIMEnabled>false</IsIMEnabled> 
          <IsDefault>false</IsDefault> 
          </Phone>
    </Phones>
    - <Locations>
        - <Location>
              <ID>2</ID> 
              <LocationType>Business</LocationType> 
              <CompanyName></CompanyName> 
              <IsDefault>false</IsDefault> 
          </Location>
      </Locations>
</Contact>
- <Contact>
  <ID>xxx</ID> 
  <AutoUpdateEnabled>false</AutoUpdateEnabled> 
  <LastChanged>2013-05-29T01:53:25.2670000Z</LastChanged> 
    - <Profiles>
        - <Personal>
              <FirstName>Person</FirstName> 
              <LastName>Two</LastName> 
              <UniqueName></UniqueName> 
              <SortName></SortName> 
              <DisplayName>Person Two</DisplayName> 
          </Personal>
      </Profiles>
    - <Emails>
        - <Email>
              <ID>1</ID> 
              <EmailType>Personal</EmailType> 
              <Address>[email protected]</Address> 
              <IsIMEnabled>false</IsIMEnabled> 
              <IsDefault>true</IsDefault> 
          </Email>
      </Emails>
    - <Locations>
        - <Location>
              <ID>2</ID> 
              <LocationType>Business</LocationType> 
              <CompanyName>Testing Company</CompanyName> 
              <IsDefault>false</IsDefault> 
          </Location>
      </Locations>
    </Contact>
 </Contacts>

Мой пример кода:

XmlDocument xmldoc = new XmlDocument();
xmldoc.LoadXml("TheXMLFile.xml");

xmldoc.DocumentElement.SelectNodes("contact")  // return 0 counts
xmldoc.DocumentElement.SelectNodes("/contact")  // return 0 counts
xmldoc.DocumentElement.SelectNodes("/contact")  // return 0 counts
xmldoc.DocumentElement.SelectNodes("/contacts/contact")  // return 0 counts
xmldoc.DocumentElement.SelectNodes("*")  // return 2 counts  !this works

XmlNodeList elemList = xmldoc.DocumentElement.GetElementsByTagName("contact"); // return 2 counts  !this also works
foreach (XmlNode node in elemList)
{    
    node.SelectSingleNode("Profiles")  //return ""
    node.SelectSingleNode("/Profiles")  //return ""
    node.SelectSingleNode("//Profiles")  //return ""
    node.SelectSingleNode(".//Profiles")  //return ""
}

Я просто хочу получить "FirstName, LastName, Email Address",SelectNodes Функция просто не работает, как ожидалось ... Понятия не имею ... пожалуйста, помогите. заранее спасибо

Ответы на вопрос(3)

Ваш ответ на вопрос