zoukankan
html css js c++ java
个人学习代码保存:例12.读取GridView文件中的数据到Excel文件
前台代码:Default.aspx
<%
@ Page Language
=
"
C#
"
AutoEventWireup
=
"
true
"
CodeFile
=
"
Default.aspx.cs
"
Inherits
=
"
_Default
"
EnableEventValidation
=
"
false
"
%>
<!--
EnableEventValidation = "false" 用GridView导出Execl的时候,会发生只能在执行 Render() 的过程中调用 RegisterForEventValidation的错误提示。
-->
<!
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>
<
html
xmlns
="http://www.w3.org/1999/xhtml"
>
<
head
runat
="server"
>
<
title
>
无标题页
</
title
>
</
head
>
<
body
>
<
form
id
="form1"
runat
="server"
>
<
div
>
<
asp:GridView
ID
="GridView1"
runat
="server"
>
</
asp:GridView
>
</
div
>
<
asp:Button
ID
="Button1"
runat
="server"
OnClick
="Button1_Click"
Text
="导出Excel"
/>
</
form
>
</
body
>
</
html
>
后台代码:Default.aspx.cs
using
System;
using
System.Data;
using
System.Configuration;
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
System.Data.SqlClient;
public
partial
class
_Default : System.Web.UI.Page
{
private
static
string
connstr
=
ConfigurationManager.AppSettings[
"
ConnectionString
"
].ToString();
protected
void
Page_Load(
object
sender, EventArgs e)
{
if
(
!
IsPostBack)
{
this
.GridView1.DataSource
=
GetData();
this
.GridView1.DataBind();
}
}
public
DataSet GetData()
{
SqlConnection con
=
new
SqlConnection(connstr);
if
(con.State.Equals(ConnectionState.Closed))
{
con.Open();
}
string
sql
=
"
select * from guestbook
"
;
SqlCommand cmd
=
new
SqlCommand(sql,con);
SqlDataAdapter sda
=
new
SqlDataAdapter(cmd);
DataSet ds
=
new
DataSet();
sda.Fill(ds);
con.Close();
return
ds;
}
//
否则会出现:类型“GridView”的控件“GridView1”必须放在具有 runat=server 的窗体标记内。
public
override
void
VerifyRenderingInServerForm(Control control)
{
//
Confirms that an HtmlForm control is rendered for
}
protected
void
Button1_Click(
object
sender, EventArgs e)
{
ExportDataGrid(
"
online/ms-excel
"
,
"
ddd.xls
"
);
}
private
void
ExportDataGrid(
string
FileType,
string
FileName)
{
Response.Clear();
Response.Buffer
=
true
;
Response.Charset
=
"
utf-7
"
;
Response.AppendHeader(
"
Content-Disposition
"
,
"
attachment;filename=FileFlow.xls
"
);
Response.ContentEncoding
=
System.Text.Encoding.GetEncoding(
"
utf-7
"
);
Response.ContentType
=
"
application/ms-excel
"
;
this
.EnableViewState
=
false
;
System.IO.StringWriter oStringWriter
=
new
System.IO.StringWriter();
System.Web.UI.HtmlTextWriter oHtmlTextWriter
=
new
System.Web.UI.HtmlTextWriter(oStringWriter);
this
.GridView1.RenderControl(oHtmlTextWriter);
Response.Write(oStringWriter.ToString());
Response.End();
}
}
查看全文
相关阅读:
知乎神回复:代码之间为什么要加空格?这个问题我是这样理解的!
经验分享:一个 30 岁的人是如何转行做程序员,进入IT行业的?
对于程序员来说,学历真的重要吗?为何都是高学历混的风生水起?
教材、教参、教案有哪些区别?
教参是什么
教师面试指要
教师资格证结构化面试是什么?会怎么考查?
教师资格证面试试讲时可以戴手表吗
讲师面试流程及试讲指导
教师资格面试:试讲和说课的区别
原文地址:https://www.cnblogs.com/wbcms/p/1037569.html
最新文章
@PropertySource注解
SpringBoot全局配置文件@ConfigurationProperties VS @Value
YAML的语法
SpringBoot的配置文件
SpringBoot之注解
redis入门
sql索引和性能调优
mybatis使用
让架构师直呼受不了你了
FutureTask和Callable和Executor在微服务开发中的使用/4/8
热门文章
常用软件工具
上心一点,少写bug
mysql数据库的基本修养
微服务切换的更新2020/4/07
C/C++编程笔记:C语言打造中国象棋游戏,项目源代码分享!
知乎神回复:集中全世界程序员的力量,能三天内开发手机淘宝吗?
教你一招:彻底击垮面试官心里防线,让你能够轻轻松松面试成功!
关于程序员的电影,作为一个资深程序员,最少要看过这几部!
C/C++编程笔记:C语言NULL值和数字 0 值区别及NULL详解
程序员面试屡次失败?那么请记住这 5 点!让你提高80%面试通过率
Copyright © 2011-2022 走看看