我无法将Xml输出转换为我期望的文件。
我想要这个:
<Book id="RED" desc="All about the color." mmtype="NO">
</Book>
但我得到的是:
<Book id="RED" desc="All about the color." mmtype="NO" />
我创建节点的代码是:
XmlNode newNode = _xmlDocument.CreateElement("Book");
//Add Attributes
XmlAttribute attrID = _xmlDocument.CreateAttribute("id");
attrID.Value = newBook.ID;
newNode.Attributes.Append(attrID);
XmlAttribute attrDesc = this._xmlDocument.CreateAttribute("desc");
attrDesc.Value = newBook.Description;
newNode.Attributes.Append(attrDesc);
XmlAttribute attrMmType = this._xmlDocument.CreateAttribute("mmtype");
attrMmType.Value = newBook.mmType;
newNode.Attributes.Append(attrMmType);
//Add new child node to parent
parentNode.InsertBefore(newNode, parentNode.FirstChild);
我没有看到如何以不同方式设置节点以获得块结果。 也许我需要在节点之前添加一个子节点到节点?但我没有 对于这个特定的节点。
任何帮助都将不胜感激。
答案 0 :(得分:2)
<Tag />
是<Tag></Tag>
的缩写形式,其中打开/关闭部分之间没有任何内容。
你可以通过添加一个空格作为元素的子XmlText
来解决这个问题,但是从长远来看,这实际上是没有意义的,因为你只是在视觉上以非最佳方式对它进行格式化办法。任何体面的XML Parser都应该能够读取短格式标签,因为它是推荐的行为。