<appSettings> <add key="xmlFile" value="xml/class.xml"/> </appSettings> <appSettings> <add key="xmlFile" value="xml/class.xml"/> </appSettings>
前台:
复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="test_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>C#操作Xml(增删改查)练习</title> </head> <body> <form runat="server"> <div runat="server"> 显示Xml文档 </div> <div>为html控件绑定服务器控件的两个要点:<br /> 1.onserverclick="serverMethod"这里只写方法名.<br /> 2.后台代码,必须是<br /> protected void XmlAdd(object sender, EventArgs e){}<br /> 注意两个参数及保护级. </div> <input type="button" value="add" runat="server" onserverclick="XmlAdd" /> <input type="button" value="delete" runat="server" onserverclick="XmlDelete" /> <input type="button" value="update" runat="server" onserverclick="XmlUpdate" /> <input type="button" value="query" runat="server" onserverclick="XmlQuery" /> </form> </body> </html> <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="test_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>C#操作Xml(增删改查)练习</title> </head> <body> <form runat="server"> <div runat="server"> 显示Xml文档 </div> <div>为html控件绑定服务器控件的两个要点:<br /> 1.onserverclick="serverMethod"这里只写方法名.<br /> 2.后台代码,必须是<br /> protected void XmlAdd(object sender, EventArgs e){}<br /> 注意两个参数及保护级. </div> <input type="button" value="add" runat="server" onserverclick="XmlAdd" /> <input type="button" value="delete" runat="server" onserverclick="XmlDelete" /> <input type="button" value="update" runat="server" onserverclick="XmlUpdate" /> <input type="button" value="query" runat="server" onserverclick="XmlQuery" /> </form> </body> </html>
后台:
复制代码 代码如下: using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Xml; public partial class test_Default : System.Web.UI.Page { string xmlFile = System.Configuration.ConfigurationManager.AppSettings["xmlFile"]; XmlDocument XmlDoc = new XmlDocument(); protected void Page_Load(object sender, EventArgs e) { Bind(); } private void Bind() { XmlDoc.Load(Server.MapPath("../" + xmlFile));//向上一级 this.showXml.InnerHtml = System.Web.HttpUtility.HtmlEncode(XmlDoc.InnerXml); } protected void XmlAdd(object sender, EventArgs e) { XmlNode objRootNode = XmlDoc.SelectSingleNode("//Root"); //声明XmlNode对象 XmlElement objChildNode = XmlDoc.CreateElement("Student"); //创建XmlElement对象 objChildNode.SetAttribute("id", "1"); objRootNode.AppendChild(objChildNode); // XmlElement objElement = XmlDoc.CreateElement("Name");//???结点和元素的区别?方法都一样. objElement.InnerText = "tree1"; objChildNode.AppendChild(objElement); //保存 XmlDoc.Save(Server.MapPath("../" + xmlFile)); } protected void XmlDelete(object sender, EventArgs e) { string Node = "//Root/Student[Name='tree1']";//Xml是严格区分大小写的. XmlDoc.SelectSingleNode(Node).ParentNode.RemoveChild(XmlDoc.SelectSingleNode(Node)); //保存 XmlDoc.Save(Server.MapPath("../" + xmlFile)); } protected void XmlUpdate(object sender, EventArgs e) { //XmlDoc.SelectSingleNode("//Root/Student[Name='tree1']/Name").InnerText = "tree2"; XmlDoc.SelectSingleNode("//Root/Student[Name='tree1']").Attributes["id"].Value = "001"; //保存 XmlDoc.Save(Server.MapPath("../" + xmlFile)); } protected void XmlQuery(object sender, EventArgs e) { XmlNodeList NodeList = XmlDoc.SelectNodes("//Root/Student");//查询全部的student节点 //循环遍历节点,查询是否存在该节点 for (int i = 0; i < NodeList.Count; i++) { Response.Write(NodeList[i].ChildNodes[0].InnerText); } //查询单个节点,//表示全部匹配的元素./表示以此为根的子元素.javascript下的查询也是一样. string XmlPathNode = "//Root/Student[Name='rock']/Photo"; Response.Write(XmlDoc.SelectSingleNode(XmlPathNode).InnerText); } } using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Xml; public partial class test_Default : System.Web.UI.Page { string xmlFile = System.Configuration.ConfigurationManager.AppSettings["xmlFile"]; XmlDocument XmlDoc = new XmlDocument(); protected void Page_Load(object sender, EventArgs e) { Bind(); } private void Bind() { XmlDoc.Load(Server.MapPath("../" + xmlFile));//向上一级 this.showXml.InnerHtml = System.Web.HttpUtility.HtmlEncode(XmlDoc.InnerXml); } protected void XmlAdd(object sender, EventArgs e) { XmlNode objRootNode = XmlDoc.SelectSingleNode("//Root"); //声明XmlNode对象 XmlElement objChildNode = XmlDoc.CreateElement("Student"); //创建XmlElement对象 objChildNode.SetAttribute("id", "1"); objRootNode.AppendChild(objChildNode); // XmlElement objElement = XmlDoc.CreateElement("Name");//???结点和元素的区别?方法都一样. objElement.InnerText = "tree1"; objChildNode.AppendChild(objElement); //保存 XmlDoc.Save(Server.MapPath("../" + xmlFile)); } protected void XmlDelete(object sender, EventArgs e) { string Node = "//Root/Student[Name='tree1']";//Xml是严格区分大小写的. XmlDoc.SelectSingleNode(Node).ParentNode.RemoveChild(XmlDoc.SelectSingleNode(Node)); //保存 XmlDoc.Save(Server.MapPath("../" + xmlFile)); } protected void XmlUpdate(object sender, EventArgs e) { //XmlDoc.SelectSingleNode("//Root/Student[Name='tree1']/Name").InnerText = "tree2"; XmlDoc.SelectSingleNode("//Root/Student[Name='tree1']").Attributes["id"].Value = "001"; //保存 XmlDoc.Save(Server.MapPath("../" + xmlFile)); } protected void XmlQuery(object sender, EventArgs e) { XmlNodeList NodeList = XmlDoc.SelectNodes("//Root/Student");//查询全部的student节点 //循环遍历节点,查询是否存在该节点 for (int i = 0; i < NodeList.Count; i++) { Response.Write(NodeList[i].ChildNodes[0].InnerText); } //查询单个节点,//表示全部匹配的元素./表示以此为根的子元素.javascript下的查询也是一样. string XmlPathNode = "//Root/Student[Name='rock']/Photo"; Response.Write(XmlDoc.SelectSingleNode(XmlPathNode).InnerText); } }
xml文件
复制代码 代码如下: (编辑:焦作站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|