为什么找不到xml中的节点?解决方案

为什么找不到xml中的节点?
我的XML文件是.txt文件,里面格式是XML的,用以下方法找不到节点SuccessfulValidations.


                    XmlDocument doc = new XmlDocument();
                    doc.Load(txtFile);
                    XmlNode node = doc.SelectSingleNode("SuccessfulValidations");


请高手帮帮忙,我想取节点SuccessfulValidations下的所有子节点,从而取所有子点点下的属性.

------解决思路----------------------
扩展名改成.xml试过吗
------解决思路----------------------
参考:
为什么找不到xml中的节点?解决方案

http://www.cnblogs.com/insus/p/4308740.html
------解决思路----------------------
有namespace,下面是用System.Xml.Linq来获取的
string xml = @"
<ComputerBuildReportAckResponse xmlns=""http://schemas.ms.it.oem/digitaldistribution/2010/10"">
  <ComputerBuildReportAcks>
    <ComputerBuildReportAck>
      <MSReportUniqueID>f5de0a5c-3810-4128-b1c1-acfaa470b87d</MSReportUniqueID>
      <CustomerReportUniqueID>c7b1274f-feaf-4e42-bee2-4575ccd5f288</CustomerReportUniqueID>
      <MSReceivedDateUTC>2014-06-23T00:00:00+0000</MSReceivedDateUTC>
      <SoldToCustomerID>200001208</SoldToCustomerID>
      <ReceivedFromCustomerID>200001208</ReceivedFromCustomerID>
      <CBRAckFileTotal>1</CBRAckFileTotal>
      <CBRAckFileNumber>1</CBRAckFileNumber>
 
      <SuccessfulValidations>
        <SuccessfulValidationResult>
          <ProductKeyID>2621320037148</ProductKeyID>
          <HardwareHash>JgAAAAAAAAABAAAAAQAAAAAAAgABAAEAJJSYSHpenIh+VY/74KU=</HardwareHash>
        </SuccessfulValidationResult>
        <SuccessfulValidationResult>
          <ProductKeyID>2621320037152</ProductKeyID>
          <HardwareHash>JgAAAAAAAAABAAAAAQAAAAAAAgABAAEAJJSCHNjbCgtQDhPT4KU=</HardwareHash>
        </SuccessfulValidationResult>
        <SuccessfulValidationResult>
          <ProductKeyID>2621320037156</ProductKeyID>
          <HardwareHash>JgAAAAAAAAABAAAAAQAAAAAAAgABAAEAJJSMD8bXnIj7fC7C4KU=</HardwareHash>
        </SuccessfulValidationResult>
        <SuccessfulValidationResult>
          <ProductKeyID>2621320037157</ProductKeyID>
          <HardwareHash>JgAAAAAAAAABAAAAAQAAAAAAAgABAAEAJJSGtmLhpBWtcf6E4KU=</HardwareHash>
        </SuccessfulValidationResult>
      </SuccessfulValidations>
 
    </ComputerBuildReportAck>
  </ComputerBuildReportAcks>
</ComputerBuildReportAckResponse>";
            XElement root = XElement.Parse(xml);
            var nsp = root.GetDefaultNamespace().NamespaceName;
            var ele = root.Element(XName.Get("ComputerBuildReportAcks", nsp))
                .Element(XName.Get("ComputerBuildReportAck", nsp))
            .Element(XName.Get("SuccessfulValidations", nsp));

------解决思路----------------------
要加上路径啊
doc.SelectSingleNode("ComputerBuildReportAckResponse\ComputerBuildReportAcks\ComputerBuildReportAck\SuccessfulValidations");