C#以HTTP方式导出XML类型列,并弹出保存框

本文介绍了一个ASP.NET应用程序中的XML数据导出功能实现细节。通过获取特定ID的门户服务日志详细信息并将其转换为XML格式,最终提供给用户下载。此过程涉及数据检索、格式化及HTTP响应设置等步骤。
/// <summary>
        /// 导出 
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void ButtonExport_Click(object sender, EventArgs e)
        {
            try
            {
                string fId = Request["fId"].Trim();
                DataTable dt = new Mindray.MMIP.EDPManageService.BaseInfo.MATLSAPSynchronizationLogService().GetPortalServiceLogDetail(fId);
                DataSet ds = new DataSet();
                if (dt != null && dt.Rows.Count > 0)
                {
                    string xmlStr = dt.Rows[0]["FContentXML"].ToString();
                    HttpResponse resp;
                    resp = Page.Response;
                    resp.Clear();
                    resp.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
                    resp.Charset = "GB2312";
                    resp.AppendHeader("Content-Disposition", "attachment;filename=" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xml");
                    //从DataSet中直接导出XML数据并且写到HTTP输出流中 
                    resp.Write("<?xml version=\"1.0\" encoding=\"gb2312\"?>" + xmlStr);
                    //写缓冲区中的数据到HTTP头文档中 
                    resp.End();
                }
                else
                {
                    lblTip.Text = "无XML数据!";
                }
            }
            catch (Exception ex)
            {
                lblTip.Text = "导出失败,请稍后重试!";
            }


        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值