无法返回XML请求
问题描述:
我正尝试创建一个XML文档以通过Web服务返回,并且非常难过。我对XML本身仍然很陌生,所以我在努力学习。我得到的错误是无法返回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请求之前操作它,我不知道如何没有对象的实例。
任何想法?
答
对于一般情况下的NullReferenceExceptions,您应该在该行放置一个断点(通常为F9)并启动调试器。一旦命中该行,检查变量并确认其中一个实际上是空的。
就你而言,应该很明显root
为空(假定代码成功使用xml_doc
)。在这一点上,找到root
为假定的地方,并调查为什么没有发生。
你在哪里创建'root'? – DavidGouge 2011-03-09 17:04:10