2011-03-09 124 views
0

我正嘗試創建一個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請求之前操作它,我不知道如何沒有對象的實例。

任何想法?

+3

你在哪裏創建'root'? – DavidGouge 2011-03-09 17:04:10

回答

1

對於一般情況下的NullReferenceExceptions,您應該在該行放置一個斷點(通常爲F9)並啓動調試器。一旦命中該行,檢查變量並確認其中一個實際上是空的。

就你而言,應該很明顯root爲空(假定代碼成功使用xml_doc)。在這一點上,找到root假定的地方,並調查爲什麼沒有發生。