客户端经常需要与服务器同步数据,直接将数据集(DataSet)转成XML流,然后下载。

客户端可以读入文件,并更新。

protected void Button1_Click(object sender, EventArgs e)

{

DataSet xml = new DataSet();

string[] tables = { "anquanjuli", "duice", "falvfagui", "fenlei", "shuyu", "xuanzhi", "yingjijiuyuan", "zhiduguicheng", "zhuyishixiang" };

for (int i = 0; i < tables.Length; i++)

{

DataSet ds = BaseDAL.WHT_DAL.db.ExecuteDataSet(CommandType.Text, "select * from " + tables[i]);

ds.Tables[0].TableName = tables[i];

xml.Tables.Add(ds.Tables[0].Copy());

}



XmlWriterSettings settings = new XmlWriterSettings();

settings.Indent = true;



StringBuilder sb = new StringBuilder();

XmlWriter writer = XmlWriter.Create(sb, settings);

writer.WriteProcessingInstruction("xml", "version=/"1.0/" encoding=/"utf-8/" standalone=/"yes/"");

xml.WriteXml(writer,XmlWriteMode.WriteSchema);

HttpContext.Current.Response.Charset = "UTF-8";

HttpContext.Current.Response.ContentEncoding = Encoding.UTF8;

HttpContext.Current.Response.ContentType = "application/xml";

HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=WHT.xml");

HttpContext.Current.Response.Write(sb.ToString());

HttpContext.Current.Response.End();



}