using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using System.Data;
using System.Text;

public partial class ckgl_ck_ckqd : System.Web.UI.Page
{
    private static BLLV_Order bllv_order = new BLLV_Order();
    private static BLLOutbound bll_outbound = new BLLOutbound();
    private static BLLOrderDetial bll_orderdetial = new BLLOrderDetial();
    private static BLLV_OutboundDetial bllv_outbounddetial = new BLLV_OutboundDetial();
    private static BLLV_OutboundDetial_Count_Ext bll_outbounddetial_ext = new BLLV_OutboundDetial_Count_Ext();
    protected static BLLStorage bllstorage = new BLLStorage();
    protected BLLSpace bllspace = new BLLSpace();
    List<StorageModel> storagemodellist = bllstorage.SelectAll();
    private static BLLOrder bllorder = new BLLOrder();
    private static int PageSize = 10000;
    private static string Order_IDs = "";
    private static string Outbound_ID = "";
    private static V_OutboundDetialModel v_obdm = new V_OutboundDetialModel();
    private static BLLOperLog blloperlog = new BLLOperLog();

//导出Excel文件
    protected void btn_Export_Click(object sender, EventArgs e)
    {
        Dictionary<string, string> dicspace = new Dictionary<string, string>();
        foreach (var item in storagemodellist)
        {
            SpaceModel sm = new SpaceModel();
            sm.Storage_ID = item.Storage_ID;
            List<SpaceModel> spacelist = bllspace.Select(sm, "1");
            foreach (var space in spacelist)
            {
                dicspace.Add(item.Storage_ID + space.Space_ID, space.Name);
            }
        }
        try
        {
            V_OutboundDetial_Count_ExtModel outbounddetial_ext_model = new V_OutboundDetial_Count_ExtModel();
            outbounddetial_ext_model.Outbound_ID = Outbound_ID;
            outbounddetial_ext_model.OutType = "0";
            List<V_OutboundDetial_Count_ExtModel> count_ext_models = bll_outbounddetial_ext.Select(outbounddetial_ext_model, "1");
            DataTable dt = new DataTable();
            DataColumn[] dc ={
                           new DataColumn("学习资料编号"),
                           new DataColumn("教学资料名称"),
                           new DataColumn("订购类型"),
                           new DataColumn("数量"),
                           new DataColumn("单价(元)"),
                           new DataColumn("库位"),
                           new DataColumn("仓位")
                       };
            dt.Columns.AddRange(dc);
            DataRow drHead = dt.NewRow();
            drHead["学习资料编号"] = "学习资料编号";
            drHead["教学资料名称"] = "教学资料名称";
            drHead["订购类型"] = "订购类型";
            drHead["数量"] = "数量";
            drHead["单价(元)"] = "单价(元)";
            drHead["库位"] = "库位";
            drHead["仓位"] = "仓位";
            dt.Rows.Add(drHead);
            //导入内容
            foreach (var model in count_ext_models)
            {
                DataRow dr = dt.NewRow();
                dr["学习资料编号"] = model.TMID;
                dr["教学资料名称"] = model.TMName;
                dr["订购类型"] = model.OrderName;
                dr["数量"] = model.SumCount;
                dr["单价(元)"] = model.Price;
                dr["库位"] = model.StorName;
                dr["仓位"] = dicspace[model.Storage_ID + model.Space_ID];
                dt.Rows.Add(dr);
            }
            ExportByWeb(dt, "出库清单.xls");
            //ExportExcel1.FileName = "出库清单.xls";
            //ExportExcel1.ExportToExcel(dt);
        }
        catch (Exception ex)
        {
            string strmessage = @"alert('" + ex.Message + "');";
            ClientScript.RegisterStartupScript(this.GetType(), "", strmessage, true);
        }
    }
 
    public static void ExportByWeb(DataTable dtSource, string strFileName)
    {
        try
        {
            HttpContext curContext = HttpContext.Current;

// 设置编码和附件格式   
            curContext.Response.ContentType = "application/vnd.ms-excel";
            curContext.Response.ContentEncoding = Encoding.UTF8;
            curContext.Response.Charset = "";
            curContext.Response.AppendHeader("Content-Disposition",
                "attachment;filename=" + HttpUtility.UrlEncode(strFileName, Encoding.UTF8));

curContext.Response.BinaryWrite(Cau_TeachOrderLibrary.Common.RenderToExcel(dtSource).GetBuffer());
            curContext.Response.End();
        }
        catch (Exception ee)
        {
            throw new ApplicationException("导出过程出错!" + ee.Message);

}

}
}

Excel导出cs文件的更多相关文章

  1. thinkphp3.2.3 excel导出,下载文件,包含图片

    关于导出后出错的问题 https://segmentfault.com/q/1010000005330214 https://blog.csdn.net/ohmygirl/article/detail ...

  2. Excel导出插件

    前言 一个游戏通常需要10多个Excel表格或者更多来配置,一般会通过导出csv格式读取配置. 本文提供导出Excel直接生成c#文件,对应数据直接生成结构体和数组,方便开发排错和简化重复写每个表格的 ...

  3. Excel导出插件-VSTO

    前言 一个游戏通常需要10多个Excel表格或者更多来配置,一般会通过导出csv格式读取配置. 本文提供导出Excel直接生成c#文件,对应数据直接生成结构体和数组,方便开发排错和简化重复写每个表格的 ...

  4. asp.net教程:GridView导出到Excel或Word文件

    asp.net教程:GridView导出到Excel或Word文件</ br> 在项目中我们经常会遇到要求将一些数据导出成Excel或者Word表格的情况,比如中国移动(我是中国移动用户) ...

  5. asp.net(C#) Excel导出类 导出.xls文件

    ---恢复内容开始--- using Microsoft.Office.Interop.Excel; 针对office 2003需添加引用Microsoft   Excel   11.0   Obje ...

  6. (转载)DBGridEh导出Excel等格式文件

    DBGridEh导出Excel等格式文件 uses DBGridEhImpExp; {--------------------------------------------------------- ...

  7. Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类

    Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类 ============================== ©Copyright 蕃薯耀 20 ...

  8. Laravel Excel 实现 Excel-CSV 文件导入导出功能

    Laravel Excel 是一款基于 PHPExcel 开发的Laravel框架专用的 Excel/CSV 文件导入导出功能的扩展包,用起来的非常方便. 它的 Github 地址是:https:// ...

  9. C# Aspose.Cells导出xlsx格式Excel,打开文件报“Excel 已完成文件级验证和修复。此工作簿的某些部分可能已被修复或丢弃”

    报错信息: 最近打开下载的 Excel,会报如下错误.(xls 格式不受影响) 解决方案: 下载代码(红色为新添代码) public void download() { string fileName ...

随机推荐

  1. 鼠标点击变色 lvha

    a标签有四个"状态"的先后过程是:a:link ->a:hover ->a:active ->a:visited.另外,a:active不能设置有无下划线(总是有 ...

  2. 微软推荐的Get a code signing certificate流程和链接

    Get a code signing certificate   Before you can establish a Windows Dev Center hardware dashboard ac ...

  3. Powershell环境变量

    Powershell环境变量 9 12月, 2011  在 Powershell tagged 变量by Mooser Lee 本文索引 [隐藏] 1读取特殊的环境变量 2查找环境变量 3创建新的环境 ...

  4. 使用 C# 编写简易 ASP.NET Web 服务器

    原文 http://www.cnblogs.com/lcomplete/p/use-csharp-write-aspnet-web-server.html 如果你想获得更好的阅读体验,可以前往我在 g ...

  5. windows下将隐藏文件通过命令行改变为普通的显示文件

    attrib -h -s *.* /s /d 不懂的看下 attrib /? 帮助.保存为bat也可以.

  6. 使用 Strace 和 GDB 调试工具的乐趣

    编写 UNIX® 系统程序充满乐趣,并且具有教育意义.使用 UNIX strace 工具和 GDB(GNU 项目调试工具),您可以真正地深入研究系统的功能,并了解组成这些功能的各种各样的程序.同时使用 ...

  7. DBA 经典面试题(5)

    国外公司的Oracle DBA试题 Oracle DBA Interview Questions 1. How many memory layers are in the shared pool? 2 ...

  8. 笔试、面试重点总结:WIN32、MFC与Linux

    win32 1. Win32应用程序的基本类型. 2. 创建win32窗口程序的几个步骤,及使用到的函数. 3. nmake 与 makefile. 4. 有哪些字符集? Win32对于各种字符集如何 ...

  9. 学习php常用算法

    <?php /*学用php算法*/ /*1.冒泡法 *思路分析:在要排序的一组数中,对当前还未排好的序列, *从前往后对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒. *即,每 ...

  10. python之路-pip安装

    pip类似RedHat里面的yum,安装Python包非常方便   安装pip方法: 1.安装环境:ubuntu-14.04.2 sudo apt-get install python-pip pyt ...