创建XML文件时出错

时间:2013-12-25 07:50:10

标签: asp.net xml linq

我正在尝试创建一个简单的XML文件,但我得到了异常

  

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

在这一部分:

doc.Root.Add(persons);

我做错了什么?

 XDocument doc = new XDocument(new XDeclaration("1.0", "utf-8", null));
    XElement persons = new XElement("Persons");
    XElement[] el ={new XElement("PersonInfo",new XAttribute("ID",1),
               new XElement("Name","ali"),
               new XElement("Phone","222222"))
               };

    persons.Add(el);
    doc.Add(persons);

    doc.Save("PhoneBook.xml", SaveOptions.None);
    Response.Write("ok");
}

1 个答案:

答案 0 :(得分:1)

你应该使用:

doc.Add(persons);

然后你会得到这个XML:

<Persons>
  <PersonInfo ID="1">
    <Name>ali</Name>
    <Phone>222222</Phone>
  </PersonInfo>
</Persons>

XDocument没有Root。这就是您尝试访问它时获得NullReferenceException的原因。