Ejemplo n.º 1
0
 /// <summary>
 /// 导出Excel,以旧列名-新列名词典为标头
 /// </summary>
 /// <param name="dt"></param>
 /// <param name="dicCoumnNameMapping"></param>
 public static void DataTableToExcel(System.Data.DataTable dt, Dictionary<string, string> dicCoumnNameMapping, string fileName)
 {
     ExcelHandler eh = new ExcelHandler();
     SheetExcelForm frm = new SheetExcelForm();
     eh.ProcessHandler = frm.AddProcess;
     eh.ProcessErrorHandler = new Action<string>((msg) =>
     {
         MessageBox.Show(msg);
     });
     try
     {
         frm.Show();
         Delay(20);
         var ds = new System.Data.DataSet();
         ds.Tables.Add(dt);
         eh.DataSet2Excel(ds, dicCoumnNameMapping, fileName);
         ds.Tables.Remove(dt);
         ds.Dispose();
     }
     catch (Exception ex)
     {
         MessageBox.Show("导出Excel错误:" + ex.Message);
     }
     finally
     {
         Delay(20);
         frm.Close();
     }
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 将DataSet导出为excel,一个Table对应一个sheet
 /// </summary>
 /// <param name="ds"></param>
 public static void DataSetToExcel(System.Data.DataSet ds, string fileName)
 {
     ExcelHandler eh = new ExcelHandler();
     SheetExcelForm frm = new SheetExcelForm();
     eh.ProcessHandler = frm.AddProcess;
     eh.ProcessErrorHandler = new Action<string>((msg) =>
     {
         MessageBox.Show(msg);
     });
     try
     {
         frm.Show();
         Delay(20);
         eh.DataSet2Excel(ds, null, fileName);
         ds.Dispose();
     }
     catch (Exception ex)
     {
         MessageBox.Show("导出Excel错误:" + ex.Message);
     }
     finally
     {
         Delay(20);
         frm.Close();
     }
 }
        /// <summary>
        /// 将DataSet导出为excel,一个Table对应一个sheet
        /// </summary>
        /// <param name="ds"></param>
        public static void DataSetToExcel(System.Data.DataSet ds, string fileName)
        {
            ExcelHandler   eh  = new ExcelHandler();
            SheetExcelForm frm = new SheetExcelForm();

            eh.ProcessHandler      = frm.AddProcess;
            eh.ProcessErrorHandler = new Action <string>((msg) =>
            {
                MessageBox.Show(msg);
            });
            try
            {
                frm.Show();
                Delay(20);
                eh.DataSet2Excel(ds, null, fileName);
                ds.Dispose();
            }
            catch (Exception ex)
            {
                MessageBox.Show("导出Excel错误:" + ex.Message);
            }
            finally
            {
                Delay(20);
                frm.Close();
            }
        }
        /// <summary>
        /// 导出Excel,以旧列名-新列名词典为标头
        /// </summary>
        /// <param name="dt"></param>
        /// <param name="dicCoumnNameMapping"></param>
        public static void DataTableToExcel(System.Data.DataTable dt, Dictionary <string, string> dicCoumnNameMapping, string fileName)
        {
            ExcelHandler   eh  = new ExcelHandler();
            SheetExcelForm frm = new SheetExcelForm();

            eh.ProcessHandler      = frm.AddProcess;
            eh.ProcessErrorHandler = new Action <string>((msg) =>
            {
                MessageBox.Show(msg);
            });
            try
            {
                frm.Show();
                Delay(20);
                var ds = new System.Data.DataSet();
                ds.Tables.Add(dt);
                eh.DataSet2Excel(ds, dicCoumnNameMapping, fileName);
                ds.Tables.Remove(dt);
                ds.Dispose();
            }
            catch (Exception ex)
            {
                MessageBox.Show("导出Excel错误:" + ex.Message);
            }
            finally
            {
                Delay(20);
                frm.Close();
            }
        }
Ejemplo n.º 5
0
        public void DataTableToExcle(System.Data.DataTable dt, Dictionary <string, string> dicCoumnNameMapping, string fileName)
        {
            try
            {
                string exportDir = "~/ExcelFile/";//注意:该文件夹您须事先在服务器上建好才行
                if (System.IO.Directory.Exists(GetPhysicalPath(exportDir)) == false)
                {
                    System.IO.Directory.CreateDirectory(GetPhysicalPath(exportDir));
                }

                if (string.IsNullOrEmpty(fileName))
                {
                    fileName = DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".xls";
                }

                //设置文件在服务器上的路径
                string physicalFileName = GetPhysicalPath(System.IO.Path.Combine(exportDir, fileName));

                ExcelHandler eh = new ExcelHandler();
                eh.ProcessErrorHandler = this.ErrorMessageHandler;

                var ds = new System.Data.DataSet();
                ds.Tables.Add(dt);
                eh.DataSet2Excel(ds, dicCoumnNameMapping, physicalFileName);
                ds.Tables.Remove(dt);
                ds.Dispose();

                //==============返回客户端
                ResponeToClient(physicalFileName, fileName);
            }
            catch (Exception ex)
            {
                if (this.ErrorMessageHandler != null)
                {
                    ErrorMessageHandler("导出过程中出错," + ex.Message);
                }
                if (ErrorHandler != null)
                {
                    ErrorHandler(ex);
                }

                GC.Collect();
            }
        }
Ejemplo n.º 6
0
        public void DataTableToExcle(System.Data.DataTable dt, Dictionary<string, string> dicCoumnNameMapping, string fileName)
        {
            try
            {
                string exportDir = "~/ExcelFile/";//注意:该文件夹您须事先在服务器上建好才行
                if (System.IO.Directory.Exists(GetPhysicalPath(exportDir)) == false)
                {
                    System.IO.Directory.CreateDirectory(GetPhysicalPath(exportDir));
                }

                if (string.IsNullOrEmpty(fileName)) fileName = DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".xls";

                //设置文件在服务器上的路径
                string physicalFileName = GetPhysicalPath(System.IO.Path.Combine(exportDir, fileName));

                ExcelHandler eh = new ExcelHandler();
                eh.ProcessErrorHandler = this.ErrorMessageHandler;

                var ds = new System.Data.DataSet();
                ds.Tables.Add(dt);
                eh.DataSet2Excel(ds, dicCoumnNameMapping, physicalFileName);
                ds.Tables.Remove(dt);
                ds.Dispose();

                //==============返回客户端
                ResponeToClient(physicalFileName, fileName);
            }
            catch (Exception ex)
            {
                if (this.ErrorMessageHandler != null) ErrorMessageHandler("导出过程中出错," + ex.Message);
                if (ErrorHandler != null) ErrorHandler(ex);

                GC.Collect();
            }
        }