无法返回XML请求

时间:2011-03-09 16:58:32

标签: c# xml

我正在尝试创建一个XML文档以通过Web服务返回,而且我很难过。我对XML本身还很陌生,所以我正在努力学习。我得到的错误是

  

对象引用未设置为   对象的实例。

代码通过调用构造函数,接收请求文档并将其解析为响应来工作。我有请求和响应的格式,只需要能够发送回来。

代码:

XmlTextReader xml_read = new XmlTextReader(HttpContext.Current.Request.MapPath("/ap/aitcXMLConfirmationRequest.xml"));
XmlDocument xml_doc = new XmlDocument();
xml_doc.Load(xml_read);
xml_read.Close();

//Do some stuff.
int int_dtl = 1;

//Builds the list of Confirmation items. 
XmlNodeList nodelst_cnfrm = p_transdoc.SelectNodes("//Request/OrderRequest/ItemOut");

foreach (XmlNode node in nodelst_cnfrm)
{
   XmlNode node_cnfrm_itm = this.CreateElement("ConfirmationItem");
   //Do some other stuff here
}

xml_doc.ImportNode(node_cnfrm_itm,true);

root.AppendChild(xml_doc);  //Error generated here. 
this.AppendChild(root);

但它给了我上面提到的错误。任何人都可以帮忙吗?如果我在AppendChild请求之前一直在操作它,我不明白没有对象的实例。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

一般来说,对于NullReferenceExceptions,您应该在该行上放置一个断点(通常为F9)并启动调试器。一旦命中该行,检查变量并确认其中一个实际上是空的。

在您的情况下,很明显root为空(假设代码成功使用xml_doc)。此时,找到要设置root 的地方,并调查未发生的原因。