爽的翻 2018-09-25 03:19 采纳率: 66.7%
浏览 554
已采纳

asp.net gridview 导出Excel 分页???

  • 这是我现在用的方法

    /// 导出方法
        /// </summary>
        /// <param name="GridView"></param>
        /// <param name="filename">保存的文件名称</param>
        private void ExportGridViewForUTF8(GridView GridView, string filename)
        {
    
            string attachment = "attachment; filename=" + filename;
    
            Response.ClearContent();
            Response.Buffer = true;
            Response.AddHeader("content-disposition", attachment);
    
            Response.Charset = "UTF-8";
            Response.ContentEncoding = System.Text.Encoding.GetEncoding("UTF-8");
            Response.ContentType = "application/ms-excel";
            System.IO.StringWriter sw = new System.IO.StringWriter();
    
            HtmlTextWriter htw = new HtmlTextWriter(sw);
            GridView.RenderControl(htw);
    
            Response.Output.Write(sw.ToString());
            Response.Flush();
            Response.End();
        }
    

    图片说明

  • 这是我用这个方法实现的效果

  • 现在我想让他把后面分页的5224条数据,全显示在一个Excel表里

  • 应该怎么写啊 大佬们
    *

  • 写回答

2条回答 默认 最新

  • 发个福福 2018-09-25 07:26
    关注
    如果你不想去掉网页的分页  可以向下面 加上前两句代码  重新从数据源查一遍数据 ,gridview 的属性allowpaging 设为false  不会影响网页分页
    
    
        private void ExportGridViewForUTF8(GridView GridView1, string filename)
    {
    
        GridView1.AllowPaging = false;
    
        bind();//重新为gridview 绑定数据
    
    
        string attachment = "attachment; filename=" + filename;
    
        Response.ClearContent();
        Response.Buffer = true;
        Response.AddHeader("content-disposition", attachment);
    
        Response.Charset = "UTF-8";
        Response.ContentEncoding = System.Text.Encoding.GetEncoding("UTF-8");
        Response.ContentType = "application/ms-excel";
        System.IO.StringWriter sw = new System.IO.StringWriter();
    
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        GridView1.RenderControl(htw);
    
        Response.Output.Write(sw.ToString());
        Response.Flush();
        Response.End();
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥100 iOS开发关于快捷指令截屏后如何将截屏(或从截屏中提取出的文本)回传给本应用并打开指定页面
  • ¥15 unity连接Sqlserver
  • ¥15 图中这种约束条件lingo该怎么表示出来
  • ¥15 VSCode里的Prettier如何实现等式赋值后的对齐效果?
  • ¥15 流式socket文件传输答疑
  • ¥20 keepalive配置业务服务双机单活的方法。业务服务一定是要双机单活的方式
  • ¥50 关于多次提交POST数据后,无法获取到POST数据参数的问题
  • ¥15 win10,这种情况怎么办
  • ¥15 如何在配置使用Prettier的VSCode中通过Better Align插件来对齐等式?(相关搜索:格式化)
  • ¥100 在连接内网VPN时,如何同时保持互联网连接