最近很多小伙伴都在问asp.net–将HTML表导出到Excel和html里的表格导出excel这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展.netmvc将数据库数据导出到Ex
最近很多小伙伴都在问asp.net – 将HTML表导出到Excel和html里的表格导出excel这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展.net mvc将数据库数据导出到Excel表、ASP.NET MVC把表格导出到Excel、asp.net – 将数值强制为HTML表导出为excel的文本、asp.net-mvc – 在Asp.net MVC中导出到Excel [已关闭]等相关知识,下面开始了哦!
本文目录一览:- asp.net – 将HTML表导出到Excel(html里的表格导出excel)
- .net mvc将数据库数据导出到Excel表
- ASP.NET MVC把表格导出到Excel
- asp.net – 将数值强制为HTML表导出为excel的文本
- asp.net-mvc – 在Asp.net MVC中导出到Excel [已关闭]
asp.net – 将HTML表导出到Excel(html里的表格导出excel)
(1)我使用局部视图(Inquiries.ascx)来显示数据库中的表数据(使用LINQ to Entity)
(2)我也使用UITableFilter插件来过滤记录(例如:http://gregweber.info/projects/demo/flavorzoom.html)
(3)在任何时候,我都必须将可见记录过滤到Excel.
感谢您的回复.
谢谢
丽塔
这是我的观点:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Mvc.Master" Inherits="System.Web.Mvc.ViewPage" %> <asp:Content ID="Content2" ContentPlaceHolderID="cphHead" runat="server"> <script src="../../Scripts/jquery.tablesorter.js" type="text/javascript"></script> <script src="../../Scripts/jquery.uitablefilter.js" type="text/javascript"></script> <script type="text/javascript"> //Load Partial View $('#MyInquiries').load('/Home/Inquiries'); // To Apply Filter Expression using uiTableFilter plugin $("#searchName").keyup(function() { $.uiTableFilter($("#tblRefRequests"),this.value); $("#tblRefRequests").tablesorter({ widthFixed: true,widgets: ['zebra'] }); }); //Export the HTML table contents to Excel $('#export').click(function() { //Code goes here }); </script> </asp:Content> //Main Content <asp:Content ID="Content1" ContentPlaceHolderID="cphContent" runat="server"> <h2>View All Inquiries</h2> <input type="submit" value="Export to Excel" id="export" /> <div id='MyInquiries'></div> </asp:Content>
强类型部分视图用户控件(Inquiries.ascx)生成表:
<table> <tr><td valign ="middle">Filter Expression: <%= Html.TextBox("searchName")%></td></tr> </table> <table id="tblRefRequests" > <thead> <tr> <th>Tx_ID</th> <th>TX Date</th> <th>Name</th> <th>Email Address </th> <th>Products</th> <th>Document Name</th> </tr> </thead> <tbody> <% foreach (var item in Model) { %> <tr> <td visible =false><%= item.RequestID %></td> <td><%= String.Format("{0:d}",item.RequestDate) %></td> <td><%= item.CustomerName %></td> <td><%= Html.Encode(item.Email) %></td> <td><%= item.ProductName %></td> <td><%= Html.Encode(item.DocDescription)%></td> </tr> <% } %> </tbody> </table>
这是我的控制器代码加载查询局部视图:
[HttpGet] public PartialViewResult Inquiries() { var model = from i in myEntity.Inquiries where i.User_Id == 5 orderby i.TX_Id descending select new { RequestID = i.TX_Id,CustomerName = i.CustomerMaster.FirstName,RequestDate = i.RequestDate,Email = i.CustomerMaster.MS_Id,DocDescription = i.Document.Description,ProductName = i.Product.Name }; return PartialView(model); }
解决方法
这是一个实现:
>向页面添加常规html输入按钮和.NET HiddenField
>将onclick事件添加到名为“Export”的按钮
>创建一个javascript函数Export,它将table2CSV()的返回值存储到隐藏字段中,然后回发.
>服务器接收隐藏字段的发布数据(csv作为字符串)
>服务器将字符串作为csv文件输出到浏览器
.
// javascript function Export() { $('#yourHiddenFieldId').val() = $('#yourTable').table2CSV({delivery:'value'}); __doPostBack('#yourExportBtnId',''); } // c# if(Page.IsPostBack) { if(!String.IsNullOrEmpty(Request.Form[yourHiddenField.UniqueId])) { Response.Clear(); Response.ContentType = "text/csv"; response.addheader("Content-disposition","attachment; filename=TheReport.csv"); Response.Flush(); Response.Write(Request.Form[yourHiddenField.UniqueID]); Response.End(); } }
.net mvc将数据库数据导出到Excel表
第一步:NuGet下载EPPlus
第二步:控制器代码,在名为CorrectHomeWork的控制器创建方法ExcelExport,头部不需要[HttpPost]
//将该课程中的该作业命题的全部学生作业导入Excel表
public ActionResult ExcelExport()
{
string Task_Title = Session["Task_Title"].ToString();
string L_Name = Session["L_Name"].ToString();
string C_Name = Session["C_Name"].ToString();
//指定项目存放的路径
string sWebRootFolder = AppDomain.CurrentDomain.BaseDirectory + "/DownLoadExcelexport";
//指定项目名字
//string sFileName = $"{Guid.NewGuid()}.xlsx";
string sFileName = C_Name+ L_Name+ Task_Title+"作业成绩表"+ $"{Guid.NewGuid()}.xlsx";
//把项目名加到指定存放的路径
FileInfo file = new FileInfo(Path.Combine(sWebRootFolder, sFileName));
using (ExcelPackage package = new ExcelPackage(file))
{
//添加worksheet的名字
ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("作业成绩单");
//添加表头名字
worksheet.Cells[1, 1].Value = "学号";
worksheet.Cells[1, 2].Value = "班级";
worksheet.Cells[1, 3].Value = "作业命题";
worksheet.Cells[1, 4].Value = "分数";
worksheet.Cells[1, 5].Value = "首次提交日期";
worksheet.Cells[1, 6].Value = "最后修改日期";
worksheet.Cells[1, 7].Value = "教师评价";
//添加值
var rowNum = 2; // rowNum 1 is head
var Homework = homeWorkService.Query(s => s.Task_Title == Task_Title && s.L_Name == L_Name);
//var Homework = from s in con.Homework select s;//循环数据库输出数据
Homework = Homework.OrderBy(s => s.S_Number);
foreach (var message in Homework)
{
worksheet.Cells["A" + rowNum].Value = message.S_Number;
worksheet.Cells["B" + rowNum].Value = message.C_Name;
worksheet.Cells["C" + rowNum].Value = message.Task_Title;
worksheet.Cells["D" + rowNum].Value = message.HW_Grade;
worksheet.Cells["E" + rowNum].Value = message.HW_SubmitDate.ToString();
worksheet.Cells["F" + rowNum].Value = message.HW_UpdataDate.ToString();
worksheet.Cells["G" + rowNum].Value = message.HW_Comment;
rowNum++;
}
package.Save();
}
//获取到存在项目中文件的路径
var fileUrl = Server.MapPath("~/DownLoadExcelexport/" + sFileName);
//application/ms-excel为内部固定的,
return File(fileUrl, "application/ms-excel", sFileName);
}
第三步:在视图<a>标签调用控制器方法:
<span style="font-size:18px;color:blue"><a href="/CorrectHomeWork/ExcelExport">Excel表导出作业</a></span>
ASP.NET 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")
到此这篇关于ASP.NET MVC把表格导出到Excel的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持。
- .NET6导入和导出EXCEL
- Asp.Net Core实现Excel导出功能的实现方法
- ASP.NET Core 导入导出Excel xlsx 文件实例
- asp.net DataTable导出Excel自定义列名的方法
- ASP.NET使用GridView导出Excel实现方法
- Asp.Net使用Npoi导入导出Excel的方法
- asp.net导出excel的简单方法实例
- asp.net导出Excel类库代码分享
- ASP.NET导出数据到Excel的实现方法
- Asp.net中DataTable导出到Excel的方法介绍
- ASP.NET用DataSet导出到Excel的方法
- asp.net GridView导出到Excel代码
asp.net – 将数值强制为HTML表导出为excel的文本
问题单元格:
Response.Write("<tdalign='left' NowRAP>" & rspodetail("ITM_ID") & "</td>")
例子
HTML | EXCEL
00212704 | 212704
00212336 | 212336
00212251 | 212251
解决方法
Response.Write("<tdalign='left' NowRAP>=""" & rspodetail("ITM_ID") & """</td>")
asp.net-mvc – 在Asp.net MVC中导出到Excel [已关闭]
解决方法
XML 2003 ref on MSDN
XML 2007 ref on MSDN
关于asp.net – 将HTML表导出到Excel和html里的表格导出excel的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于.net mvc将数据库数据导出到Excel表、ASP.NET MVC把表格导出到Excel、asp.net – 将数值强制为HTML表导出为excel的文本、asp.net-mvc – 在Asp.net MVC中导出到Excel [已关闭]的相关信息,请在本站寻找。
本文标签: