在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
专题图编号:ylbtechASPnetXml100010011
这是一个基于.net操作Xml的案例示例,共有两个示例。 ylb_menu:1, DemoReadXml (DataSet的ReadXml()) ylb_menu:2, DemoWriteXml(DataSet的WriteXml()和Response写Xml文档)
<?xml version="1.0" encoding="utf-8"?> <vote> <item belong="三国演义"> <id>1</id> <name>赵云</name> <number>100</number> </item> <item belong="水浒"> <id>2</id> <name>李逵</name> <number>4</number> </item> <item belong="三国演义"> <id>3</id> <name>诸葛亮</name> <number>100</number> </item> </vote>
using System; using System.Data; public partial class DemoReadXml : System.Web.UI.Page { /// <summary> /// ylb;1, 读取XML文档 /// </summary> private void ReadXml() { //创建一个虚拟库 DataSet ds = new DataSet(); //加载XML ds.ReadXml(Server.MapPath("Vote.xml")); //取出表 DataTable dt = ds.Tables[0]; //遍历表 Response.Write("<pre>"); //循环行 for (int i = 0; i < dt.Rows.Count; i++) { //循环列 for (int j = 0; j < dt.Columns.Count; j++) { //输出一列的值 Response.Write(dt.Rows[i][j]+"\t"); } Response.Write("\n"); } Response.Write("</pre>"); //把虚拟表给GridView GridView1.DataSource = dt; GridView1.DataBind(); } protected void Page_Load(object sender, EventArgs e) { //调用 ReadXml(); } }
using System; using System.Data; using System.Data.SqlClient; public partial class DemoWriteXml : System.Web.UI.Page { /// <summary> /// ylb:1,把数据库中的表写成XML文档 /// 数据读取器(DataReader) /// </summary> private void WriteXml() { string sql = "select top 10 productID,productName,unitPrice from Products"; //string connStr = "Server=.;Database=Northwind;uid=sa;pwd=m123"; string connStr = "Server=.;Database=Northwind;Integrated Security=SSPI"; //创建一个虚拟库 DataSet ds = new DataSet("Northwind"); //创建一个虚拟表 DataTable dt = new DataTable("Products"); SqlConnection conn = new SqlConnection(connStr); SqlCommand com = conn.CreateCommand(); //把sql赋值给com.CommandText com.CommandText = sql; //peican conn.Open(); //execute try { SqlDataReader sdr = com.ExecuteReader(); //向虚拟表中加载数据 dt.Load(sdr); } finally { conn.Close(); } //把表添加到库中 ds.Tables.Add(dt); //写XML文档 ds.WriteXml(Server.MapPath("Products.xml")); Response.Write("写Xml文档成功!"); } /// <summary> /// ylb:2,把数据库中的表写成XML文档 /// 用适配器(DataAdapter) /// </summary> private void WriteXml2() { string sql = "select top 10 productID,productName,unitPrice from Products"; string connStr = "Server=.;Database=Northwind;Integrated Security=SSPI"; //创建一个虚拟表 DataSet ds = new DataSet("Northwind"); SqlDataAdapter sdr = new SqlDataAdapter(sql, connStr); //用适配器去填充虚拟库 sdr.Fill(ds); ds.Tables[0].TableName = "Products"; //给表格命名 //写XML文档 ds.WriteXml(Server.MapPath("Products2.xml")); Response.Write("写Xml文档成功!"); } /// <summary> /// ylb:2,把数据库中的表写成XML文档 /// 用适配器(DataReader) /// </summary> private void WriteXml3() { string connStr = "Server=.;Database=Northwind;Integrated Security=SSPI"; string sql = "select top 10 productId,productName,unitprice from products"; SqlConnection conn = new SqlConnection(); conn.ConnectionString = connStr; SqlCommand cmd = conn.CreateCommand(); cmd.CommandText = sql; conn.Open(); try { //直接输出Xml文档 Response.ContentType = "text/xml"; //输出文档类型为xml Response.Write("<?xml version='1.0' encoding='UTF-8'?>"); //声明xml Response.Write("<Northwind>"); //起始根元素 SqlDataReader sdr = cmd.ExecuteReader(); while (sdr.Read()) { //子元素 Response.Write("<Products>"); Response.Write(string.Format("<productId>{0}</productId>", sdr.GetInt32(0))); Response.Write(string.Format("<productName>{0}</productName>", sdr.GetString(1))); Response.Write(string.Format("<unitprice>{0}</unitprice>", sdr.GetDecimal(2))); Response.Write("</Products>"); } Response.Write("</Northwind>"); //终止根元素 } finally { conn.Close(); } Response.End(); //停止前台页面输出 } protected void Page_Load(object sender, EventArgs e) { //调用 //ylb:1, //WriteXml(); //ylb:2, //WriteXml2(); //ylb:3, WriteXml3(); } }
博客园讲解: 百度文库开发文档: http://passport.baidu.com/?business&aid=6&un=ylbtech#7 谷歌开源代码下载: http://code.google.com/p/ylbtechaspnet/downloads/list 请单击“ylbtechASPnetXml100010011”
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论