ASP.NET导出数据到Excel的实现方法

  次阅读 来源:互联网(转载协议) 2016-01-27 15:22 我要评论(0)

在做asp.net程序时涉及到数据显示的时候多数会要求打印,而网页上的打印格式往往又不能满足需求,经常用的方法就是导入到Excel以后再进行打樱(仿佛这已经是老生常谈)今天在网上搜了一段打印的代码,觉得不错,需要打印的朋友可以看看。

网上好些代码的原理大致与此类似,同样都存在一个问题,就是:

类型 GridView 的控件ctl00_center_GridView1 必须放在具有 runat=server 的窗体标记内。 说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息:System.Web.HttpException: 类型 GridView 的控件 ctl00_center_GridView1 必须放在具有 runat=server 的窗体标记内。

这段错误描述是我在注释了这段程序是报的错,

复制代码 代码如下:

//publicoverridevoidVerifyRenderingInServerForm(Controlcontrol)

//{

////base.VerifyRenderingInServerForm(control);

//}

虽然这个方法里的内容也被注释了,也就是说这是个空方法,但是如果没有个方法,程序就会报上面那个错误。最初见到这段错误说明是想到了以前做ajax程 序时报的一个错误很是类似。同样是因为没有重写VerifyRenderingInServerForm方法所致。在此提醒使用的朋友注意,下面贴出导出 到Excel的代码

复制代码 代码如下:

usingSystem;

usingSystem.Data;

usingSystem.Configuration;

usingSystem.Collections;

usingSystem.Web;

usingSystem.Web.Security;

usingSystem.Web.UI;

usingSystem.Web.UI.WebControls;

usingSystem.Web.UI.WebControls.WebParts;

usingSystem.Web.UI.HtmlControls;

usingSystem.IO;

///<summary>

///ToExcleHelper的摘要说明

///</summary>

publicclassExportHelper

{

publicstaticvoidExportToExcel(IListdataList,string[]fields,string[]headTexts,stringtitle)

{

GridViewgvw=newGridView();

intColCount,i;

//如果筛选的字段和对应的列头名称个数相对的情况下只导出指定的字段

if(fields.Length!=0&&fields.Length==headTexts.Length)

{

ColCount=fields.Length;

gvw.AutoGenerateColumns=false;

for(i=0;i<ColCount;i++)

{

BoundFieldbf=newBoundField();

bf.DataField=fields[i];

bf.HeaderText=headTexts[i];

gvw.Columns.Add(bf);

}

}

else

{

gvw.AutoGenerateColumns=true;

}

SetStype(gvw);

gvw.DataSource=dataList;

gvw.DataBind();

ExportToExcel(gvw,title);

}

本站部分文章来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 第一批国家重点研发计划公布,旷视科技开启“五年行动”

    第一批国家重点研发计划公布,旷视科技开启“五年行动”

  • 品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

    品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

  • 长虹新款智能语音空调,告诉你空调也能玩Siri

    长虹新款智能语音空调,告诉你空调也能玩Siri

  • 让AI触手可及  Qualcomm携手创通联达推出全新终端侧AI开发套件

    让AI触手可及 Qualcomm携手创通联达推出全新终端侧AI开发套件

网友点评网友点评
阅读推荐阅读推荐

据外媒报道,STEER打造了首款完全自动驾驶停车技术,旨在使常规车辆转变为无人驾驶车辆。STEER的首款技术应用是4级自动驾驶及网络安全停车...

近日,美国软性机器抓手制造商 Soft Robotics 宣布,获得 2000 万美元的融资,本轮投资者包括 Scale Venture Partners,Calibrate Ventures...

据外媒报道,加州车管局发布了《2017自动驾驶脱离报告(California Autonomous Vehicle Disengagement Reports)》,其中谈及了脱离的具体...

用人机语音交互,来解决智能家居适老的问题;通过家庭门禁与安防套件、空气净化套件、可燃气体与有害气体监控套件等相互联动,在不同生活情...