CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

!!!继续讨论——下载打开两次的问题——!!!

楼主kouyujie(小宝)2005-04-01 18:40:50 在 .NET技术 / ASP.NET 提问

相信这个问题还困扰着许多人,大家来一起讨论吧,分析其中的原因,我个人认为这与ie无关,应该与.Net相关,但不知问题的关键到底在哪里? 问题点数:0、回复次数:8Top

1 楼mingzaili()回复于 2005-04-01 19:18:23 得分 0

我的也出现过,是导出到excel的时候,但是运行几次之后,却莫名其妙的好了,只点一下就可以啦。  
  奇怪。Top

2 楼athossmth(athos)回复于 2005-04-01 19:22:29 得分 0

什么叫下载打开两次……Top

3 楼LoveCherry(论成败,人生豪迈;大不了,重头再来!^_^)回复于 2005-04-01 19:28:19 得分 0

是不是服务器端给客户端输出文件下载,第一次按打开按钮页面刷新了一次又出现一次下载对话框,这次才可以下载?  
  这个问题我也遇到过,不影响使用,但是很麻烦  
  但是这个问题仅仅出现在我的机器(win2000+ie5.0)我同事机器(winxp+ie6.0)就正常Top

4 楼hackate(兰花开香入梦境,独思佳人亦飘然!!)回复于 2005-04-01 19:45:30 得分 0

是啊,没碰到过啊,说说什么情况Top

5 楼wuha2008()回复于 2005-04-01 20:09:13 得分 0

我也遇到这种情况  
  就是弹出"提示下载或保存"的对话框后,你如果点"打开",它不是打开而是又重得弹出"提示下载或保存"的对话框,这时你再点打开,才打开这个文件,我说的是word,pdf,excel之类Top

6 楼foxtoo(阿里巴巴和四十大盗)回复于 2005-04-01 22:24:04 得分 0

嗯,关注一下,帮顶!Top

7 楼kouyujie(小宝)回复于 2005-04-02 10:58:13 得分 0

有一种方法可以回避这个问题:我们可以实现在点击“打开”按钮时不单独打开本地Excel,而是在线打开,即直接在IE里用Excel打开,但这样做比较慢。代码如下:  
  public   static   void   ExportExcel(System.Web.UI.Page   page,DataView   dv,string[]   headers,string[]   colnames)  
  {  
  HttpResponse   resp;  
   
  resp   =   page.Response;  
  resp.ContentEncoding   =   System.Text.Encoding.GetEncoding("gb2312");  
  resp.AppendHeader("Content-Disposition",   "online;filename=report.xls");//*****  
  resp.ContentType   =   "application/ms-excel";  
   
  string   colHeaders=   "",   ls_item="";  
  int   i   =   0;  
   
  foreach(string   header   in   headers)  
  {  
  colHeaders   +=   header   +   "\t";  
  }  
  colHeaders   +=   "\n";  
   
  resp.Write(colHeaders);  
   
  i   =   0;  
  foreach(DataRowView   row   in   dv)  
  {  
  ls_item   +=   Convert.ToString(i   +   1)   +   "\t";  
  foreach(string   colname   in   colnames)  
  ls_item   +=   row[colname].ToString()   +   "\t";  
   
  ls_item   +=   "\n";  
  resp.Write(ls_item);  
  ls_item="";  
  i++;  
  }  
  resp.End();  
  }  
   
  关键的地方在于参数“online”,若为“attachment”,则会出现打开两次的问题。  
  Top

8 楼minghui000(沉迷网络游戏)回复于 2005-04-02 19:10:11 得分 0

帮你顶一下  
  Top

相关问题

  • 打开与下载
  • 继续讨论神六
  • 资源下载问题的讨论
  • ====资源下载权限讨论====
  • 欢迎进来讨论,讨论的好就继续加分!
  • 继续讨论petzold的一处描述------------------------------:
  • 继续讨论多语言的问题
  • windows 打开方式的问题,(很值得讨论)
  • 讨论:window.open()打开窗口后,session失效的解决方法
  • 在IE里能打开本地软件(在线讨论)

关键词

  • 下载
  • excel
  • ie
  • 打开
  • resp
  • colheaders
  • colname
  • 对话框
  • 问题
  • ls

得分解答快速导航

  • 帖主:kouyujie

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo