我是想在asp页面中单击导出按钮的时候我就可以把Dataset中的数据导出来,然后就可以打开或者保存,求大哥们尽量给代码咯
解决方案 »
- MVC3如何获取dropdownList的选中项的text
- MVC3 xml .net
- 谁帮忙写个正则表达式,使用在URLrewrite.net的规则的里面
- 在同一个ifrmae框架跨页面获取控件?
- HttpContext.Current.Request.Url.PathAndQuery 与HttpContext.Current.Request.Path的区别?
- GridView 排序问题!
- ====vs 2005里面Web site项目中如何引用aspx文件?====
- 有关SqlClient ,服务器运行一段时间好后,就会出现下面这类型的错误
- 怎么在下载对话框中显示中文名称?
- 数据显示格式
- visualstudio 2010,装在64位win7上,但是编译错误和属性说明,都变成英文的了,这是为什么呢
- 微信应用
public void ExportResult(DataTable dt, string excelName)
{
Response.Clear();
Response.Charset = "";
Response.ContentType = "applicationnd.ms-xls";
StringWriter sw = new StringWriter();
HtmlTextWriter htmlWrite = new HtmlTextWriter(sw);
DataGrid dg = new DataGrid();
dg.DataSource = dt;
dg.DataBind();
dg.RenderControl(htmlWrite);
Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode(excelName));
Response.Write(sw.ToString());
Response.End();
}
如1楼代码
Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode(excelName));
/// 导出Excel
/// </summary>
protected void btn_exl_Click(object sender, EventArgs e)
{ ToExcel(); }
//必须有 不然会出错
public override void VerifyRenderingInServerForm(Control control)
{ }
public void ToExcel()//整个GRIDVIEW导出到EXCEL
{
gvSoft.Columns[0].Visible = false;
HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode("决算完成【" + DateTime.Now.ToString("yyyy-MM-dd") + "】.xls", System.Text.Encoding.UTF8));
HttpContext.Current.Response.ContentType = "application/ms-excel"; HttpContext.Current.Response.Charset = "UTF-8";
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
int row = gvSoft.Columns.Count; //关闭控件的视图状态
gvSoft.Page.EnableViewState = false;
//初始化HtmlWriter
System.IO.StringWriter writer = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWriter = new System.Web.UI.HtmlTextWriter(writer); gvSoft.RenderControl(htmlWriter); //输出 HttpContext.Current.Response.Write(writer.ToString());
HttpContext.Current.Response.End(); }