我已经成功地在节点中编写我的设置。
XmlDocument xmlDoc = new XmlDocument();
XmlNode rootNode = xmlDoc.CreateElement("Propertise");
xmlDoc.AppendChild(rootNode);
XmlNode userNode = xmlDoc.CreateElement("Property");
XmlAttribute attribute = xmlDoc.CreateAttribute("default");
attribute.Value = "4.5";
userNode.Attributes.Append(attribute);
attribute = xmlDoc.CreateAttribute("amount");
attribute.Value = "4.5";
userNode.Attributes.Append(attribute);
attribute = xmlDoc.CreateAttribute("name");
attribute.Value = "some setting name";
userNode.Attributes.Append(attribute);
rootNode.AppendChild(userNode);
但是缺少XML中的end属性标记。
我需要更改哪些内容才能完成丢失的标记?
答案 0 :(得分:0)
它没有遗漏最终属性标签。它是自动关闭标记,因为它没有任何子节点。
<?xml version="1.0" encoding="utf-8"?>
<Propertise>
<Property default="4.5" amount="4.5" name="some setting name" />
^
|
It is closed here.
</Propertise>
一旦你在里面添加了一些子节点,它就会在另一行中有一个结束标记,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<Propertise>
<Property default="4.5" amount="4.5" name="some setting name">
<OtherProperty />
</Property>
</Propertise>
您可能还想在下次使用XDocument而不是XmlDocument,因为我认为它可以使创建xml文档更加简单:
XDocument doc = new XDocument(
new XElement("Properties",
new XElement("Property",
new XAttribute("default", "4.5"),
new XAttribute("amount", "4.5"),
new XAttribute("name", "some setting name"))));