2016-05-24 70 views
1

我必须接受3个用户输入称为的NullReferenceException追加孩子的XML文档

  1. 名称
  2. 日期
  3. 说明

一个aspx页面时抛出我想创建一个XML文档使用这些。当我尝试追加孩子,我得到一个NullReferenceException与

{"Object reference not set to an instance of an object."}

一个细节这里是我的代码

  string name = EventName.Text; 
      string date = DatePicker.SelectedDate.ToString(); 
      string description = NewsDescription.Text; 

      //Create XML Document 
      XmlDocument doc = new XmlDocument(); 

      //Event Name 
      XmlElement elem = doc.CreateElement("Name"); 
      XmlText text = doc.CreateTextNode(name.ToString()); 
      doc.DocumentElement.AppendChild(elem); 
      doc.DocumentElement.AppendChild(text); 

      //Event Date 
      XmlElement elem2 = doc.CreateElement("Date"); 
      XmlText text2 = doc.CreateTextNode(date.ToString()); 
      doc.DocumentElement.AppendChild(elem2); 
      doc.DocumentElement.AppendChild(text2); 

      //Event Description 
      XmlElement elem3 = doc.CreateElement("Description"); 
      XmlText text3 = doc.CreateTextNode(description.ToString()); 
      doc.DocumentElement.AppendChild(elem3); 
      doc.DocumentElement.AppendChild(text3); 

      doc.Save(Console.Out); 

Visual Studio Screen shot

+1

的可能的复制[?什么是一个NullReferenceException,以及如何解决呢(http://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-and-how-do-i-fix-it) –

+0

错误非常明显。只需检查相关的对象以查看哪一个为空。 –

+0

[DocumentElement.AppendChild引发对象引用未设置为对象实例]的可能重复(http://stackoverflow.com/questions/16276229/documentelement-appendchild-throws-object-reference-not-set-to-an -instance-of-an) – abrown

回答

0

doc没有元素呢。

XmlElement elem = doc.CreateElement("Name"); // is just declaration 

所以,

doc.DocumentElement.AppendChild(elem); 

应该是:

doc.AppendChild(elem);