0
我试图将(马)对象转换为XmlElement,以便我可以将它附加到XML文件。这是我最近尝试过的。将对象序列化为XML并将其附加到XML文件
// create writer and serializer to add horse to xml
var stringwriter = new StringWriter();
var serializer = new XmlSerializer(horse.GetType());
// serialize horse object to xml
serializer.Serialize(stringwriter, horse);
var xmlStr = stringwriter.ToString();
// format string to xml
var horseXml = new XmlDocument();
horseXml.LoadXml(xmlStr);
// get horse element from horseXml
var horseEl = horseXml.ChildNodes[0];
// assign xmldb to xml document
var xmlDb = new XmlDocument();
xmlDb.Load(xmlDbFilepath);
XmlNode root = xmlDb.DocumentElement;
// add horseEl to root of xmlDb
root.AppendChild(horseEl);
xmlDb.Save(xmlDbFilepath);
不幸的是,当我站上罚球线,root.AppendChild(horseEl),这将引发以下异常:“类型‘System.ArgumentException’发生在system.xml.dll的的异常,但没有处理在用户代码中附加信息:要插入的节点来自不同的文档上下文。“
任何意见将不胜感激!
编辑:这里是一个链接显示my horse class and xmldb。
请包含'horse'的类定义和文件'xmlDbFilepath'的内容。 –
刚刚添加了一个链接,谢谢。 – fyodorfranz
该课程不完整。请添加子类和枚举的定义。 –