.net中两个GRIDVIEW导出到一个excel
答案:4 悬赏:60
解决时间 2021-02-14 18:20
- 提问者网友:騷女、無惡不作
- 2021-02-14 07:14
.net中两个GRIDVIEW导出到一个excel
最佳答案
- 二级知识专家网友:伤口狠精致
- 2021-02-14 07:32
你把两个GridView放在一个div里,比如这样
<div runat="server" id="divExport">
<gridview1 .....>
<gridview2 .....>
</div>
然后后台gvSelectorder.RenderControl(oHtmlTextWriter);这句改成divExport.RenderControl(oHtmlTextWriter);试一下
<div runat="server" id="divExport">
<gridview1 .....>
<gridview2 .....>
</div>
然后后台gvSelectorder.RenderControl(oHtmlTextWriter);这句改成divExport.RenderControl(oHtmlTextWriter);试一下
全部回答
- 1楼网友:滚刀废物浮浪人
- 2021-02-14 10:53
其实你可以使用开源工具直接导出datatable中的数据,给你提供一个org.in2bits.MyXls。网上搜一下开源的东西,使用非常方便,可以把datatable,或者dataset导出成标准excel文件,你使用上面的方式其实生成的不是标准的excel,所以你上面导出的excel应该不能再重新导进到数据库中。
不过楼上的方法也可以试试,祝你好运,元旦快乐!
- 2楼网友:为你轻狂半世殇
- 2021-02-14 09:28
现在,gridview中已经绑定了数据,接下来的任务就是导出到excel。下面是button事件中的代码
response.clearcontent();
response.addheader("content-disposition", "attachment; filename=myexcelfile.xls");
response.contenttype = "application/excel";
stringwriter sw = new stringwriter();
htmltextwriter htw = new htmltextwriter(sw);
gvusers.rendercontrol(htw);
response.write(sw.tostring());
response.end();
并且还需要override一下verifyrenderinginserverform方法(这一点非常重要,否则在点击按钮后会报错,译者注),代码如下:
public override void verifyrenderinginserverform(control control)
{
}
- 3楼网友:苦柚恕我颓废
- 2021-02-14 07:50
那你就另外写一个程序,将数据先存入目录下的Excel,然后再通过下载得到Excel,这样灵活性就很大了!
介绍你个从数据库导入Excel的语句:
EXEC master..xp_cmdshell 'bcp 库名.dbo.表名out c:\Temp.xls -c -q -S"servername" -U"sa" -P""'
参数:S 是SQL服务器名;U是用户;P是密码
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
• 手机登qq时,显示手机磁盘不足,清理后重新登 |
• 刺客的套装怎么选啊? |