我正在Visual Studio中编写一个ASP网站,无法锻炼如何识别XML树中的元素。
<layerone>
<layertwo>
<layerthree>
<fullName>XXXX</fullName>
</layerthree>
<layerthree>
<fullName>YYYY</fullName>
</layerthree>
<layerthree>
<fullName>ZZZZ</fullName>
</layerthree>
</layertwo>
</layerone>
我需要做的就是将一些基本数据从ASP表单保存到XML,我正在使用C#,并且如果我删除layerone可以将其写入XML,但是我不能锻炼我需要做的加进去,当我有3层时可以写出来。
我的C#部分如下所示。
protected void btnSave_Click(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(fullName.Text))
{
var path = Server.MapPath(xmlpath);
XDocument doc = XDocument.Load(path);
XElement root = new XElement("layerthree");
root.Add(new XElement("fullName", post_id.Text));
doc.Element("layertwo").Add(root);
doc.Save(path);
fillGrid();
clear();
}
}
如果需要,我可以发布更多代码,非常感谢您的帮助。
答案 0 :(得分:-1)
public static void Main()
{
var path = @"<layerone>
<layertwo>
<layerthree>
<fullName>XXXX</fullName>
</layerthree>
<layerthree>
<fullName>YYYY</fullName>
</layerthree>
<layerthree>
<fullName>ZZZZ</fullName>
</layerthree>
</layertwo>
</layerone>";
XDocument doc = XDocument.Parse(path);
XElement root = new XElement("layerthree");
root.Add(new XElement("fullName", "Test User"));
doc.Element("layerone").Element("layertwo").Add(root);
doc.Save(Console.Out);
}