我希望在我的网站上提供新闻,因此我创建了管理页面和简单表单,以便将新闻节点添加到xml文件中。但它将节点添加到最后位置,我需要它在第一个位置。
我的代码(在C#中):
XmlDocument xmlfile = new XmlDocument();
xmlfile.Load(Server.MapPath("/News.xml"));
XmlElement News = xmlfile.CreateElement("news");
XmlElement Title = xmlfile.CreateElement("title");
XmlElement Content = xmlfile.CreateElement("content");
XmlText TitleText = xmlfile.CreateTextNode(TextBox_title.Text);
XmlText ContentText = xmlfile.CreateTextNode(TextBox_content.Text);
Title.AppendChild(TitleText);
Content.AppendChild(ContentText);
News.AppendChild(Title);
News.AppendChild(Content);
XmlNode news = xmlfile.GetElementsByTagName("news")[0];
//xmlfile.DocumentElement.AppendChild(News);
xmlfile.Save(Server.MapPath("/News.xml"));
我的xml文件:
<theNews>
<news>
<title>
Example title
</title>
<content>
Example content.
</content>
</news>
</theNews>
编码读取xml:
`<asp:ListView ID="NewsList" runat="server" DataSourceID="XmlDataSource">
<ItemTemplate>
<h2><%# XPath("title") %></h2>
<p>
<%# XPath("content") %>
<hr />
</p>
</ItemTemplate>
</asp:ListView>
<asp:XmlDataSource ID="XmlDataSource" runat="server" DataFile="~/News.xml"></asp:XmlDataSource>`
答案 0 :(得分:3)
尝试使用PrependChild
代替AppendChild
:
xmlfile.DocumentElement.PrependChild(News);