首页新闻找找看学习计划

asp.net从数据库读取数据到dateset中,然后生成xml下载,不在服务器生成文件,直接下到本地,求高手指教!

0
悬赏园豆:50 [已解决问题] 解决于 2013-12-02 19:53

我通过把xml文件先放到服务器的方法,能够实现文件的下载,主要方法是

string xmlPath = Server.MapPath("test.xml");
objXml.XmlSave(xmlPath);

这种方法是将xml文件放到服务器上,然后是通过流的方式进行下载

byte[] byfs = FileToStream(xmlPath);

                        Response.Charset = "GB2312";
                        Response.AddHeader("Content-Disposition", "attachment; filename=\"" + HttpUtility.UrlEncode(PlanName, System.Text.Encoding.UTF8) + "\"");
                        Response.AddHeader("Content-Length", byfs.Length.ToString());
                        Response.BufferOutput = true;
                        Response.ContentEncoding = System.Text.Encoding.Default;
                        Response.ContentType = "application/octet-stream";
                        Response.BinaryWrite(byfs);
                        Response.Flush();
                        Response.Close();

现在我不希望通过这种方式下载,我想xml直接生成发送到本地,不进行服务器的写入,求高手指教!

givemetheball的主页 givemetheball | 初学一级 | 园豆:36
提问于:2013-11-22 09:07
< >
分享
最佳答案
0

不知道 objXml 是什么type, 有没有XmlSave 保存到stream 这样的方法。

有的话 直接写到输出流里 就可以了。 不需要写入文件。

收获园豆:50
gunsmoke | 老鸟四级 |园豆:3592 | 2013-11-25 07:17

你说的很对,我最后就是用这个方法解决的,把分给你!

givemetheball | 园豆:36 (初学一级) | 2013-12-02 19:52
其他回答(1)
0

Response.ContentType = "text/xml";
        Response.Write("<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n " + xml内容);

幻天芒 | 园豆:36522 (高人七级) | 2013-11-22 11:02

不还意思,你好像没有理解我的问题,不过还是谢谢你的回答!

支持(0) 反对(0) givemetheball | 园豆:36 (初学一级) | 2013-11-22 11:36
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册