数据导出到EXCEL中的问题--在线等待!

sos_hawk 2004-11-22 07:58:45
有一个WEB页面,上有两个DROPDOWNLIST控件和一个“导出到EXCEL”的按钮,之间是联动关系,即第二个DROPDOWNLIST中的内容随第一个DROPDOWNLIST选择的内容变化而变化.
本页面的功能是按照两个DROPDOWNLIST控件中的内容(即作为获取数据的条件)到数据库中找出满足条件的数据,然后用一下代码,导出到EXCEL中,
现在存在的问题是:未执行导出之前,第二个DROPDOWNLIST中的内容能随第一个DROPDOWNLIST选择的内容变化而变化;执行导出后,第二个DROPDOWNLIST中的内容不能随第一个DROPDOWNLIST选择的内容变化而变化.请教是什么原因?
HttpResponse resp;
resp = page.Response;
resp.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
resp.AppendHeader("Content-Disposition", "attachment;filename=FileName.xls");
// 指定返回的是一个不能被客户端读取的流,必须被下载
resp.ContentType = "application/ms-excel";

string colHeaders= "", ls_item="";
int i=0;
DataRow[] myRow=dataTable.Select("");
for(i=0;i<dataTable.Columns.Count-1;i++)
{
colHeaders+=dataTable.Columns[i].Caption.ToString()+"\t";
}
colHeaders +=dataTable.Columns[i].Caption.ToString() +"\n";
//向HTTP输出流中写入取得的数据信息(表头信息)
resp.Write(colHeaders);
//逐行处理数据
foreach(DataRow row in myRow)
{
//在当前行中,逐列获得数据,数据之间以\t分割,结束时加回车符\n
for(i=0;i<row.Table.Columns.Count-1;i++)
ls_item +=row[i].ToString() + "\t";
ls_item += row[i].ToString() +"\n";
//当前行数据写入HTTP输出流,并且置空ls_item以便下行数据
resp.Write(ls_item);
ls_item="";
}
resp.End();
...全文
102 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
xzq686 2004-11-22
  • 打赏
  • 举报
回复
"现在存在的问题是:未执行导出之前,第二个DROPDOWNLIST中的内容能随第一个DROPDOWNLIST选择的内容变化而变化;执行导出后,第二个DROPDOWNLIST中的内容不能随第一个DROPDOWNLIST选择的内容变化而变化."

????
估计是你的连动代码有问题吧。。检查一下你的代码。。
520NET 2004-11-22
  • 打赏
  • 举报
回复
LG

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧