asp.net 导出Excel

    //用Response导的时候,这边必须有不然会报错
        public override void VerifyRenderingInServerForm(Control control)
        {
            //base.VerifyRenderingInServerForm(control);
        }
        /// <summary>
        /// 导出Excel
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Button1_Click(object sender, EventArgs e)
        {
            Export("application/ms-excel", "管制品" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls");
        }
        /// <summary>
        /// 定义导出Excel的函数
        /// </summary>
        /// <param name="FileType"></param>
        /// <param name="FileName"></param>
        private void Export(string FileType, string FileName)
        {
            Response.Clear();
            Response.Buffer = true;
            Response.AppendHeader("Content-Disposition", "attachment;filename=LowValueAssets" + DateTime.Now.ToString("yyyyMMdd") + ".xls");
            Response.ContentEncoding = System.Text.Encoding.UTF8;
            Response.ContentType = "application/vnd.ms-excel";
            this.EnableViewState = false;


            //Response.Charset = "GB2312";
            //Response.ContentEncoding = System.Text.Encoding.UTF8;
            //Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString());
            //Response.ContentType = FileType;
            //this.EnableViewState = false;


            StringWriter tw = new StringWriter();
            HtmlTextWriter hw = new HtmlTextWriter(tw);
             GridView1.RenderControl(hw);



             Response.Write(tw.ToString());
             Response.End();
        }

            // FileStream fs = new FileStream(HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString(), System.IO.FileMode.Create, System.IO.FileAccess.Write);
            // StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.Default);

            //// 这里GridView1可以换成你要渲染生成到excel的任意控件
            // string thead = "管制品编号,管制品名称,规格,单价,使用单位,保管人,保管人工号,厂牌,提供客户,建档日期";
            // sw.WriteLine(thead);
            // List<LowValueExtend> lv = LowValueManage.getbylizhiRenYuan();
            // foreach (LowValueExtend s in lv)
            // {
            //     string a = s.LowValueAssetsID + "," + s.LowValueAssetsName + "," + s.Size + ","
            //         + s.Price + "," + s.LowValueLinkEmpID.OwnDepart + "," + s.LowValueLinkEmpID.OwnName + ","
            //         + s.LowValueLinkEmpID.OwnEmpID + "," + s.CusName + "," + s.ProvideName + "," + s.TubeTime;
            //     sw.WriteLine(a);
            // }

            // sw.Close();
            // fs.Close();
//
原文地址:https://www.cnblogs.com/WangYunyun/p/3340761.html