zoukankan      html  css  js  c++  java
  • MVC把表格导出到Excel

    有关Model:

    namespace MvcApplication1.Models
    {
        public class Coach
        {
            public  int Id { get; set; }
            public string Name { get; set; }
        }
    }

     

    HomeController中,借助GridView控件把内容导出到Excel:

    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Web.Mvc;
    using System.Web.UI;
    using MvcApplication1.Models;
    
    namespace MvcApplication1.Controllers
    {
        public class HomeController : Controller
        {
            public ActionResult Index()
            {
                return View(GetCoaches());
            }
    
            private List<Coach> GetCoaches()
            {
                return new List<Coach>()
                {
                    new Coach(){Id = 1, Name = "斯科拉里"},
                    new Coach(){Id = 2, Name = "米西维奇"}
                };
            }
    
            public void ExportClientsListToExcel()
            {
                var grid = new System.Web.UI.WebControls.GridView();
    
                grid.DataSource = from item in GetCoaches()
                                  select new
                                  {
                                      编号 = item.Id,
                                      主教练 = item.Name
                                  };
    
                grid.DataBind();
    
                Response.ClearContent();
                Response.AddHeader("content-disposition", "attachment; filename=Exported_Coaches.xls");
                Response.ContentType = "application/excel";
                Response.Charset = "utf-8";
                Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312"); 
                StringWriter sw = new StringWriter();
                HtmlTextWriter htw = new HtmlTextWriter(sw);
    
                grid.RenderControl(htw);
    
                Response.Write(sw.ToString());
    
                Response.End();
    
            }
    
        }
    }

     

    Home/Index.cshtml强类型集合视图:

    @model IEnumerable<MvcApplication1.Models.Coach>
    
    @{
        ViewBag.Title = "Index";
        Layout = "~/Views/Shared/_Layout.cshtml";
    }
    
    <table>
        <tr>
            <th>编号</th>
            <th>主教练</th>
        </tr>
        @foreach (var item in Model)
        {
            <tr>
                <td>@item.Id</td>
                <td>@item.Name</td>
            </tr>
        }
    </table>
    
    <br/>
    @Html.ActionLink("导出到Excel","ExportClientsListToExcel")
  • 相关阅读:
    java_db2错误码对应值
    oracle_用户与概要文件
    quartz配置时间
    bzoj2395: [Balkan 2011]Timeismoney
    bzoj2725: [Violet 6]故乡的梦
    bzoj4400: tjoi2012 桥
    双连通分量模板
    bzoj3047: Freda的传呼机 && 2125: 最短路
    bzoj3541: Spoj59 Bytelandian Information Agency
    bzoj1023: [SHOI2008]cactus仙人掌图
  • 原文地址:https://www.cnblogs.com/darrenji/p/3787771.html
Copyright © 2011-2022 走看看