C#操作XML的全过程实例浅析

C# 操作XML的全过程实例讲述:

C# 操作XML的全过程实例***步:

在项目文件里创建db文件夹,在db文件夹里创建db.xml文档。db.xml结构只包含:﹤Group﹥﹤/Group﹥

C# 操作XML的全过程实例第二步:

新建添加留言和显示留言的两个画面:MessageAdd.aspx和MessageList.aspx。下面是两个页面的  前台和后台源码。

C# 操作XML的全过程实例代码:

 
 
 
  1. //-----Begin------//
  2. 1.MessageAdd.aspx
  3.  //C# 操作XML的全过程实例
  4.  
  5. ﹤%@ Page language="c#" Codebehind="MessageAdd.aspx.cs" 
  6. AutoEventWireup="false" Inherits="XMLGuest.MessageAdd" %﹥
  7. ﹤!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" ﹥
  8. ﹤HTML﹥
  9.  ﹤HEAD﹥
  10.   ﹤title﹥MessageAdd﹤/title﹥
  11.   ﹤meta content="Microsoft Visual Studio 7.0" name="GENERATOR"﹥
  12.   ﹤meta content="C#" name="CODE_LANGUAGE"﹥
  13.   ﹤meta content="JavaScript" name="vs_defaultClientScript"﹥
  14.   ﹤meta content="http://schemas.microsoft.com/intellisense/ie5" 
  15. name="vs_targetSchema"﹥
  16.   ﹤style﹥.Txt1 {
  17.  FONT-SIZE: 12px
  18. }
  19.   ﹤/style﹥
  20.  ﹤/HEAD﹥
  21.  ﹤body﹥
  22.   ﹤form id="MessageAdd" method="post" runat="server"﹥
  23.    ﹤FONT face="宋体"﹥
  24.     ﹤P﹥ ﹤/P﹥
  25.     ﹤P align="center"﹥
  26.      ﹤TABLE class="Txt1" id="Table1" cellSpacing="1"
  27.  cellPadding="4" width="749" bgColor="#efefef"
  28.       border="0"﹥
  29.       ﹤TR﹥
  30.        ﹤TD bgColor="#e8dabd"﹥您的大名﹤/TD﹥
  31.        ﹤TD style="WIDTH: 508px" bgColor="#ffffff"﹥
  32. ﹤asp:textbox id="TextBoxUName" runat="server" 
  33. LeaveSQL="False" LeaveFormat="False" HtmlEncode="False"
  34.          Width="519px" MaxLength="10" CssClass=
  35. "TextAreaClass"﹥﹤/asp:textbox﹥﹤/TD﹥
  36.        ﹤TD bgColor="#ffffff" colSpan="1" rowSpan="1"﹥﹤/TD﹥
  37.       ﹤/TR﹥
  38.       ﹤TR﹥
  39.        ﹤TD bgColor="#e8dabd" colSpan="1"
  40.  rowSpan="1"﹥E-Mail﹤/TD﹥
  41.        ﹤TD style="WIDTH: 505px" bgColor="#ffffff"﹥
  42.         ﹤P﹥﹤asp:textbox id="TextBoxMail" runat="server" 
  43. LeaveSQL="False" LeaveFormat="False" HtmlEncode="False"
  44.           Width="519px" MaxLength="30" CssClass="TextAreaClass"﹥
  45. ﹤/asp:textbox﹥﹤/P﹥
  46.        ﹤/TD﹥
  47.        ﹤TD bgColor="#ffffff" colSpan="1" rowSpan="1"﹥
  48. ﹤BR﹥  //C# 操作XML的全过程实例
  49.        ﹤/TD﹥
  50.       ﹤/TR﹥
  51.       ﹤TR﹥
  52.        ﹤TD bgColor="#e8dabd" colSpan="1"
  53.  rowSpan="1"﹥内容﹤/TD﹥
  54.        ﹤TD style="WIDTH: 505px" bgColor="#ffffff"﹥
  55.         ﹤P﹥﹤asp:textbox id="TextBoxTxt" runat="server" 
  56. LeaveSQL="False" LeaveFormat="True" HtmlEncode="False"
  57.           Width="519px" TextMode="MultiLine" 
  58. Height="160px"﹥﹤/asp:textbox﹥﹤/P﹥
  59.        ﹤/TD﹥
  60.        ﹤TD bgColor="#ffffff" colSpan="1" rowSpan="1"﹥﹤/TD﹥
  61.       ﹤/TR﹥
  62.      ﹤/TABLE﹥
  63.     ﹤/P﹥
  64.     ﹤P align="center"﹥
  65. ﹤asp:button id="Button1" runat="server" 
  66. CssClass="TextAreaClass" Text=" 提交 "﹥
  67. ﹤/asp:button﹥     
  68.        ﹤INPUT class="TextAreaClass" 
  69. onclick="window.location.replace('MessageList.aspx')" 
  70. type="button"
  71.       value=" 返回 "﹥﹤/P﹥
  72.    ﹤/FONT﹥
  73.   ﹤/form﹥
  74.  ﹤/body﹥
  75. ﹤/HTML﹥
  76. MessageAdd.cs
  77.  //C# 操作XML的全过程实例
  78. using System;
  79. using System.Collections;
  80. using System.ComponentModel;
  81. using System.Data;
  82. using System.Drawing;
  83. using System.Web;
  84. using System.Web.SessionState;
  85. using System.Web.UI;
  86. using System.Web.UI.WebControls;
  87. using System.Web.UI.HtmlControls;
  88. using System.Xml;
  89. namespace XMLGuest
  90. {
  91.  /// ﹤summary﹥
  92.  /// MessageAdd 的摘要说明。
  93.  /// ﹤/summary﹥
  94.  public class MessageAdd : System.Web.UI.Page
  95.  {
  96.   protected System.Web.UI.WebControls.TextBox TextBoxUName;
  97.   protected System.Web.UI.WebControls.TextBox TextBoxMail;
  98.   protected System.Web.UI.WebControls.TextBox TextBoxTxt;
  99.   protected System.Web.UI.WebControls.Button Button1;
  100.  
  101.   private void Page_Load(object sender, System.EventArgs e)
  102.   {
  103.      //C# 操作XML的全过程实例
  104.   }
  105.   #region Web Form Designer generated code
  106.   override protected void OnInit(EventArgs e)
  107.   {
  108.    //
  109.    // CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
  110.    //
  111.    InitializeComponent();
  112.    base.OnInit(e);
  113.   }
  114.   
  115.   /// ﹤summary﹥
  116.   /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  117.   /// 此方法的内容。
  118.   /// ﹤/summary﹥
  119.   private void InitializeComponent()
  120.   {    
  121.    this.Button1.Click += new System.EventHandler(this.Button1_Click);
  122.    this.Load += new System.EventHandler(this.Page_Load);
  123.   }
  124.   #endregion
  125.   private void Button1_Click(object sender, System.EventArgs e)
  126.   {  //C# 操作XML的全过程实例
  127.    
  128.     XmlDocument doc = new XmlDocument();
  129.     doc.Load(MapPath("db\\db.xml"));
  130.     XmlNode node = doc.CreateElement("Item");
  131.      
  132.     XmlAttribute xmlattr = doc.CreateAttribute("UserName");
  133.     xmlattr.Value = XmlConvert.DecodeName(TextBoxUName.Text);
  134.     node.Attributes.Append(xmlattr);
  135.     xmlattr = doc.CreateAttribute("UserEmail");
  136.     xmlattr.Value = XmlConvert.DecodeName(TextBoxMail.Text);
  137.     node.Attributes.Append(xmlattr);
  138.     xmlattr = doc.CreateAttribute("Content");
  139.     xmlattr.Value = XmlConvert.DecodeName(TextBoxTxt.Text);
  140.     node.Attributes.Append(xmlattr);
  141.     xmlattr = doc.CreateAttribute("SendTime");
  142.     xmlattr.Value = XmlConvert.DecodeName(DateTime.Now.ToString());
  143.     node.Attributes.Append(xmlattr);
  144.     doc.ChildNodes[0].AppendChild(node);
  145.     doc.Save(MapPath("db\\db.xml"));
  146.     Response.Redirect("MessageList.aspx");
  147.     
  148.   }
  149.  }  //C# 操作XML的全过程实例
  150. }
  151. 2.MessageList.aspx
  152. ﹤%@ Page language="c#" Codebehind="MessageList.aspx.cs" 
  153. AutoEventWireup="false" Inherits="XMLGuest.MessageList" %﹥
  154. ﹤!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" ﹥
  155. ﹤HTML﹥
  156.  ﹤HEAD﹥
  157.   ﹤title﹥MessageList﹤/title﹥
  158.   ﹤meta name="GENERATOR" Content="Microsoft Visual Studio 7.0"﹥
  159.   ﹤meta name="CODE_LANGUAGE" Content="C#"﹥
  160.   ﹤meta name="vs_defaultClientScript" content="JavaScript"﹥
  161.   ﹤meta name="vs_targetSchema" 
  162. content="http://schemas.microsoft.com/intellisense/ie5"﹥
  163.   ﹤style﹥
  164.   .body { FONT-SIZE: 12px }
  165.   .td1 { FONT-SIZE: 12px }
  166.   ﹤/style﹥
  167.  ﹤/HEAD﹥  //C# 操作XML的全过程实例
  168.  ﹤body class="body"﹥
  169.   ﹤form id="MessageList" method="post" runat="server"﹥
  170.    ﹤P align="right"﹥
  171.     ﹤asp:HyperLink id="GrowHyperLink1" runat="server"
  172.  Text="[留言]" NavigateUrl="MessageAdd.aspx"﹥﹤/asp:HyperLink﹥
  173.    ﹤/P﹥
  174.    ﹤P align="center"﹥﹤FONT face="宋体"﹥﹤/FONT﹥
  175. ﹤FONT face="宋体"﹥﹤/FONT﹥﹤BR﹥
  176.     ﹤asp:DataGrid id="DataList1" runat="server" 
  177. AutoGenerateColumns="False" ShowHeader="False" PageSize="15"
  178.      BorderStyle="None" BorderWidth="0px" CellPadding="4" Font-Size="12px"﹥
  179.      ﹤Columns﹥
  180.       ﹤asp:TemplateColumn﹥
  181.        ﹤ItemTemplate﹥
  182.         ﹤TABLE id="Table7" borderColor="#efefef" cellSpacing="0"
  183.  cellPadding="4" width="749" bgColor="#efefef"
  184.          border="1"﹥
  185.          ﹤TR class="td1" bgColor="#fafafa"﹥
  186.           ﹤TD style="WIDTH: 200px" bgColor="#ffffff"﹥
  187. ﹤STRONG﹥姓名:﹤/STRONG﹥
  188.            ﹤asp:Label id=Label5 runat="server" Text='
  189. ﹤%# DataBinder.Eval(Container, "DataItem.UserName").ToString() %﹥'﹥
  190.            ﹤/asp:Label﹥  
  191.           ﹤/TD﹥
  192.           ﹤TD style="WIDTH: 150px" bgColor="#ffffff"﹥
  193. ﹤STRONG﹥﹤FONT face="宋体"﹥时间﹤/FONT﹥
  194. ﹤/STRONG﹥
  195. ﹤STRONG﹥﹤FONT face="宋体"﹥:﹤/FONT﹥
  196. ﹤/STRONG﹥
  197.            ﹤asp:Label id=Label4 runat="server" Text='
  198. ﹤%# DataBinder.Eval(Container, "DataItem.SendTime").ToString() %﹥'﹥
  199.            ﹤/asp:Label﹥﹤/TD﹥
  200.           ﹤TD bgColor="#ffffff"﹥﹤STRONG﹥E-Mail﹤/STRONG﹥
  201. ﹤STRONG﹥:
  202.             ﹤asp:HyperLink id=HyperLink1 runat="server" NavigateUrl='
  203. ﹤%# "mailto:"+DataBinder.Eval(Container, "DataItem.UserEmail").
  204. ToString() %﹥' Text='﹤%# DataBinder.Eval(Container,
  205.  "DataItem.UserEmail").ToString() %﹥'﹥
  206.             ﹤/asp:HyperLink﹥﹤/STRONG﹥﹤/TD﹥
  207.          ﹤/TR﹥
  208.          ﹤TR class="td1"﹥
  209.           ﹤TD bgColor="#ffffff" colSpan="3"﹥
  210.            ﹤asp:Label id=Label1 runat="server" Text='
  211. ﹤%# DataBinder.Eval(Container, "DataItem.Content").ToString() %﹥'﹥
  212.            ﹤/asp:Label﹥﹤/TD﹥
  213.          ﹤/TR﹥
  214.         ﹤/TABLE﹥
  215.        ﹤/ItemTemplate﹥
  216.       ﹤/asp:TemplateColumn﹥
  217.      ﹤/Columns﹥
  218.      ﹤PagerStyle Visible="False"﹥
  219. ﹤/PagerStyle﹥
  220.     ﹤/asp:DataGrid﹥
  221.    ﹤/P﹥
  222.   ﹤/form﹥
  223.  ﹤/body﹥
  224. ﹤/HTML﹥
  225.  //C# 操作XML的全过程实例
  226. MessageList.cs
  227. using System;
  228. using System.Collections;
  229. using System.ComponentModel;
  230. using System.Data;
  231. using System.Drawing;
  232. using System.Web;
  233. using System.Web.SessionState;
  234. using System.Web.UI;
  235. using System.Web.UI.WebControls;
  236. using System.Web.UI.HtmlControls;
  237. using System.IO;
  238. using System.Xml;
  239. namespace XMLGuest
  240. {  //C# 操作XML的全过程实例
  241.  /// ﹤summary﹥
  242.  /// MessageList 的摘要说明。
  243.  /// ﹤/summary﹥
  244.  public class MessageList : System.Web.UI.Page
  245.  {
  246.   protected HyperLink GrowHyperLink1;
  247.   protected System.Web.UI.WebControls.DataGrid DataList1;
  248.  
  249.   private void Page_Load(object sender, System.EventArgs e)
  250.   {
  251.    FileStream stream = new FileStream(
  252. Server.MapPath("db\\db.xml"),FileMode.Open);
  253.    try
  254.    {
  255.     XmlDataDocument doc = new XmlDataDocument();
  256.     doc.DataSet.ReadXml(new StreamReader(stream));
  257.     if(doc.DataSet.Tables.Count != 0 && doc.DataSet.Tables[0].Rows.Count!=0)
  258.     {
  259.      DataList1.DataSource = doc.DataSet.Tables[0].DefaultView ;
  260.      DataList1.DataBind();
  261.     }
  262.     stream.Close();
  263.    }
  264.    catch(Exception ding)
  265.    {
  266.     Response.Write(ding.Message);
  267.    }
  268.    finally
  269.    {
  270.     stream.Close();
  271.    }
  272.   }
  273.   #region Web Form Designer generated code
  274.   override protected void OnInit(EventArgs e)
  275.   {
  276.    //
  277.    // CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
  278.    //
  279.    InitializeComponent();
  280.    base.OnInit(e);
  281.   }
  282.     //C# 操作XML的全过程实例
  283.   /// ﹤summary﹥
  284.   /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  285.   /// 此方法的内容。
  286.   /// ﹤/summary﹥
  287.   private void InitializeComponent()
  288.   {    
  289.    this.Load += new System.EventHandler(this.Page_Load);
  290.   }
  291.   #endregion
  292.  }
  293. }
  294. //---End----//

C# 操作XML的全过程实例的基本内容就向你介绍到这里,希望对你了解和学习C# 操作XML有所帮助。

当前名称:C#操作XML的全过程实例浅析
转载源于:http://www.csdahua.cn/qtweb/news33/347483.html

网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网