MVC execl 导入导出

<input id="xls" name="xls" type="file" style="width:210px;" />
&nbsp;&nbsp;<input type="submit" value="导入" />
&nbsp;&nbsp;<a href="~/Demo/Excel_ExcelExport">导出</a>


#region Excel

        public ActionResult Excel_Index()
        {
            return View();
        }

        [HttpPost]
        public ActionResult Excel_Index(FormCollection formdata)
        {
            ViewBag.Data = null;
            ViewBag.Msg = string.Empty;

            if (this.HttpContext.Request.Files.Count <= 0 || this.HttpContext.Request.Files[0].ContentLength <= 0)
            {
                ViewBag.Msg = "请选择文件!";
                return View();
            }

            string fileExt = System.IO.Path.GetExtension(this.HttpContext.Request.Files[0].FileName).ToLower();
            if (fileExt != ".xls" && fileExt != ".xlsx")
            {
                ViewBag.Msg = "选择的文件格式不对!";
                return View();
            }

            ViewBag.Data = Demo.ImportFromStream(this.HttpContext.Request.Files[0].InputStream);

            return View();
        }

        public ActionResult Excel_ExcelExport()
        {
            DataTable dt = new DataTable();
            DataColumn dc1 = new DataColumn("column1", Type.GetType("System.String"));
            DataColumn dc2 = new DataColumn("column2", Type.GetType("System.String"));
            DataColumn dc3 = new DataColumn("column3", Type.GetType("System.String"));
            DataColumn dc4 = new DataColumn("column4", Type.GetType("System.String"));
            DataColumn dc5 = new DataColumn("column5", Type.GetType("System.String"));
            dt.Columns.Add(dc1);
            dt.Columns.Add(dc2);
            dt.Columns.Add(dc3);
            dt.Columns.Add(dc4);
            dt.Columns.Add(dc5);

            for (int i = 0; i < 10; i++)
            {
                DataRow dr = dt.NewRow();
                dr["column1"] = "test1";
                dr["column2"] = "test2";
                dr["column3"] = "test3";
                dr["column4"] = "test4";
                dr["column5"] = "test5";
                dt.Rows.Add(dr);
            }

            byte[] bytes = Demo.ExportToBytes(dt);

            return File(bytes, "application/x-excel", "ExcelExport.xls");
        }

        #endregion
View Code

相关文章: