前臺代碼:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebApplication1._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></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:button runat="server" text="Button" ID="btnSave" οnclick="btnSave_Click"/>
<asp:GridView ID="GridView1" runat="server">
</asp:GridView>
</div>
</form>
</body>
</html>
後臺代碼:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
using System.Xml;
using System.Data;
namespace WebApplication1
{
public partial class _Default : System.Web.UI.Page
{
private DataTable dt;
private DataSet ds;
protected void Page_Load(object sender, EventArgs e)
{
ds = new DataSet();
dt = new DataTable();
dt.Columns.Add("ID");
dt.Columns.Add("Title");
for (int i = 0; i < 10; i++)
{
DataRow dr = dt.NewRow();
dr[0] = i;
dr[1] = "Titel" + i;
dt.Rows.Add(dr);
}
ds.Tables.Add(dt);
this.GridView1.DataSource = dt;
this.GridView1.DataBind();
}
protected void btnSave_Click(object sender, EventArgs e)
{
Response.ClearContent();
Response.AddHeader("content-disposition", "attachment; filename=MyExcelFile.xml");
Response.ContentType = "application/xml";
StringWriter sw = new StringWriter();
XmlTextWriter xtw = new XmlTextWriter(sw);//設置encoding類型爲:utf-8
xtw.WriteRaw("<?xml version=/"1.0?>");
ds.DataSetName = "UpdateLog";//這裏改了dataSet對像的名稱,對應了XML文檔的根結點
ds.WriteXml(xtw);
xtw.Close();
Response.Write(sw.ToString());
Response.End();
}
}
}