这是我的代码:
XmlDocument doc = new XmlDocument();
foreach (string c in colorList)
{
doc.Load(@"http://whoisxmlapi.com/whoisserver/WhoisService?domainName=" + c + @"&username=user&password=pass");
textBox1.Text += doc.SelectSingleNode("WhoisRecord/registrant/email").InnerText + ",";
}
代码的第二行(textbox1 ...)正在生成此错误 我做错了什么?
答案 0 :(得分:3)
如果找不到匹配的节点,documentation for SelectSingleNode表示它返回null。您必须修复查询或处理无法找到匹配项。
答案 1 :(得分:3)
如何分割线以查看异常发生的位置?
// if node is null the problem is with SelectSingleNode
XmlNode node = doc.SelectSingleNode("WhoisRecord/registrant/email");
// if text is null the problem is with the node
string text = node.InnerText;
// if textBox1 is null the problem is with textBox1
textBox1.Text += text + ",";
答案 2 :(得分:0)
获得NullReferenceException
的唯一原因是XPath查询返回null。在运行查询之前检查XML以查看问题所在。
答案 3 :(得分:0)
似乎doc.SelectSingleNode("WhoisRecord/registrant/email")
为空。无法获取null的属性。
答案 4 :(得分:0)
浏览器会执行各种其他聪明的操作,例如关注重定向和处理会话。如何进入代码并查看失败的文档的XmlDocument的OuterXml属性?