ASP.NET将查询出的数据导出Excel时,导出的文件时未知文件
我一直用火狐运行本机程序,在ASP.NET中,当我点击导出按钮时,火狐没有任何异常,默认就是xls的文件,能成功导出并打开,我以本机作为服务器,在IIS发布版本后,公司运营管理部的同事访问我所发布的网站,当他们用IE和其他浏览器做同样操作以后,导出的文件时未知文件,需要手动填写文件格式,我一开始以为是ContentType没有设置好的原因,又或者是浏览器的原因,或者机器没有安装一些组件什么的,早了好一会,发现我既然能手动写入文件的扩展名,并能成功导出数据和打开,那肯定是我没有默认指定导出文件的扩展名,一看,果然:
string fileName = "supervise" + DateTime.Now.ToString("yyyyMMddHHmmss");
HttpResponse resp;
resp = Page.Response;
resp.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
resp.AppendHeader("Content-Disposition", "attachment;filename=" + fileName);
resp.ContentType = "application/vnd.ms-excel"; //一开始在纠结这个地方,说明我真的是反应慢,涉世未深啊,对程序还不够敏锐
resp.AppendHeader("Content-Disposition", "attachment;filename=" + fileName+“.xls”);
想,每天发现一点问题也是好的,会越来越好的,相信自己!Come on!