asp.net简单实现导出excel报表
2009-11-15 20:22
645 查看
关于导出excel报表,网上也是一搜一大把。整理一下,无非就是几种思路,有利用安装excel软件或插件的服务器直接生成,或者直接在客户端生成(通常都是利用excel软件或插件直接在浏览器生成)。反正万变不离其宗,离开excel插件,这个活你还真的干不了,由此你可以看到软件公司尤其是微软的强大。下面贴一个比较简单的导出excel报表的方法。在安装了office2003的机器上,通过ie浏览器可以成功生成excel,而且一直有人在使用。如果你在测试的时候发现这个根本无法使用,请注意,这个很可能和你的机器配置有关,别怀疑代码的正确性。下面就一个利用iBatis开发的例子来简单说明一下。
1、实体类
using System;
using System.Data;
using System.Collections;
using System.Collections.Generic;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using DotNet.Common.Util;
using IBatisNetDemo;
using IBatisNetDemo.Domain;
public partial class ExportExcelTest : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
List<string> listColumns = new List<string>();
listColumns.Add("ID");
listColumns.Add("姓");
listColumns.Add("名");
listColumns.Add("生日");
List<string> listProperties = new List<string>();
listProperties.Add("Id");
listProperties.Add("FirstName");
listProperties.Add("LastName");
listProperties.Add("BirthDate");
List<Person> listModels = new List<Person>();
Person person = new Person();
person.Id = 1;
person.FirstName = "Wong";
person.LastName = "Jeff";
person.BirthDate = DateTime.Now.AddYears(-26);
listModels.Add(person);
person = new Person();
person.Id = 2;
person.FirstName = "Zhao";
person.LastName = "Jeffery";
listModels.Add(person);
//导出excel
ExcelUtil.ExportExcel<Person>(Response, listColumns, listProperties, listModels);
}
}
}
好了,就写到这里。其实每个公司都有自己很成熟的内部的excel处理方式,这里贴的非常简陋,但是毋庸质疑,这是非常简单直接的方式。如果你觉得能用自己看着就拿去用吧,不要忘记笔者整理的功劳啊。
ps:调试的时候发现有时候会产生异常,但是excel竟然也生成了。google了一下,原来将response.End();改成 HttpContext.Current.ApplicationInstance.CompleteRequest();就不会有异常了。
1、实体类
using System;
using System.Data;
using System.Collections;
using System.Collections.Generic;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using DotNet.Common.Util;
using IBatisNetDemo;
using IBatisNetDemo.Domain;
public partial class ExportExcelTest : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
List<string> listColumns = new List<string>();
listColumns.Add("ID");
listColumns.Add("姓");
listColumns.Add("名");
listColumns.Add("生日");
List<string> listProperties = new List<string>();
listProperties.Add("Id");
listProperties.Add("FirstName");
listProperties.Add("LastName");
listProperties.Add("BirthDate");
List<Person> listModels = new List<Person>();
Person person = new Person();
person.Id = 1;
person.FirstName = "Wong";
person.LastName = "Jeff";
person.BirthDate = DateTime.Now.AddYears(-26);
listModels.Add(person);
person = new Person();
person.Id = 2;
person.FirstName = "Zhao";
person.LastName = "Jeffery";
listModels.Add(person);
//导出excel
ExcelUtil.ExportExcel<Person>(Response, listColumns, listProperties, listModels);
}
}
}
好了,就写到这里。其实每个公司都有自己很成熟的内部的excel处理方式,这里贴的非常简陋,但是毋庸质疑,这是非常简单直接的方式。如果你觉得能用自己看着就拿去用吧,不要忘记笔者整理的功劳啊。
ps:调试的时候发现有时候会产生异常,但是excel竟然也生成了。google了一下,原来将response.End();改成 HttpContext.Current.ApplicationInstance.CompleteRequest();就不会有异常了。
相关文章推荐
- Asp.net 导出Excel报表
- Asp.net导出Excel报表(解决无网格问题)
- Asp.net简单报表实现方案
- Atitit.导出excel报表的设计与实现java .net php 总结
- JSP应用导出Excel报表的简单实现以及中文乱码彻底解决(HTML)
- asp.net实现Gradview绑定数据库数据并导出Excel的方法
- Asp.net程序中用NPOI生成标准Excel报表,导入导出一应俱全
- ASP.NET实现增删改查等功能(Access版)系统之六-导出数据到EXCEL
- asp.net导出excel的简单方法实例
- ASP.NET下导出Excel 以及在Ajax下面的实现
- asp.net生成Excel并导出下载五种实现方法
- asp.net实现导出DataTable数据到Word或者Excel的方法
- Asp.net程序中用NPOI生成标准Excel报表,导入导出一应俱全
- ASP.NET 中 DataGrid 导出到 Excel 的封装实现 (转)
- asp.net Grid 导出Excel实现程序代码
- asp.net生成Excel并导出下载五种实现方法
- ASP.NET,Web界面利用Button来实现将telerik:RadGrid表格内数据导出Excel
- 在asp.net中实现水晶报表的导出功能
- ASP.NET使用GridView导出Excel实现方法
- C# asp.net 实现导出Excel