【发布时间】:2020-08-23 21:09:30
【问题描述】:
我需要像这样创建一个 XML 文档:
<Root>
<Data>
<Name>Name1</Name>
<Surname>Surname1</Surname>
<Gender>M</Gender>
</Data>
<Data>
<Name>Name2</Name>
<Surname>Surname2</Surname>
<Gender>F</Gender>
</Data>
</Root>
我有 XML 元素的 Xpath,所以我创建了以下类
class XpathFieldValue
{
public string Xpath { get; set; }
public string Value { get; set; }
}
然后是下面的方法
public static void CreateXml()
{
List<XpathFieldValue> fieldValues = new List<XpathFieldValue> {
new XpathFieldValue{ Xpath="/Root/Data/Name", Value="Name1" },
new XpathFieldValue{ Xpath="/Root/Data/Surname", Value="Surname1" },
new XpathFieldValue{ Xpath="/Root/Data/Gender", Value="M"},
new XpathFieldValue{ Xpath="/Root/Data/Name", Value="Name2" },
new XpathFieldValue{ Xpath="/Root/Data/Surname", Value="Surname2" },
new XpathFieldValue{ Xpath="/Root/Data/Gender", Value="F"}
};
XmlDocument document = new XmlDocument();
document.LoadXml("<Root/>");
foreach (XpathFieldValue fieldValue in fieldValues)
{
Set(document, fieldValue.Xpath, fieldValue.Value);
}
document.Save(@"C:\Temp\xmlDocOut.xml");
}
我从这里复制了 Set 方法:link
但是当我运行它时,它只会创建 XML 的最后一部分
<Root>
<Data>
<Name>Name2</Name>
<Surname>Surname2</Surname>
<Gender>F</Gender>
</Data>
</Root>
谁能帮帮我?
【问题讨论】:
-
我的回答对你有用吗?你以某种方式解决了吗?
-
我正在尝试根据我的情况调整它