MVC 导出Excel 的其中一方法(View导出excel)
场景:mvc下导出excel
思路:使用View导出excel
步骤:
1.导出标签添加事件
$("#export_A").click(function(){
//省略代码.....
window.location.href = "/DuplicateTaskManager/DuplicateTaskManager/ExportExcel/?taskId=" + taskId + "&unitId=" + unitId + "&levelId=" + levelId;
});
2.准备View
public ActionResult ExportExcel(int taskId, int unitId, int levelId)
{
HttpContext.Response.ContentType = "application/vnd.ms-excel";
HttpContext.Response.Charset = "utf-8";
HttpContext.Response.ContentEncoding = Encoding.UTF8;
HttpContext.Response.AppendHeader("Content-Disposition", "attachment; filename=\"" + UTF_FileName("审核结果查询_" + DateTime.Now.ToString("yyyyMMddHHmmss")) + ".xls\"");
//list是需要下载出的数据,和导出设置无关,正常获取数据,在View遍历
return PartialView(list); }
/// <summary>
/// 将文件名转为UrlEncode
/// </summary>
/// <param name="filename"></param>
/// <returns></returns>
private static string UTF_FileName(string filename)
{
return HttpUtility.UrlEncode(filename, System.Text.Encoding.UTF8);
}
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }3.View 遍历数据
<table border="1">
<thead>
<tr>
<td width="100" rowspan="2">
单位
</td>
<td width="60" rowspan="2">
审核总数
</td>
<td rowspan="2">
未审核数
</td>
<td colspan="<%=ss.Keys.Count%>">
<span style="margin-left: 40%;">已审核数</span>
</td>
<td width="60" rowspan="2">
已完成审核比率
</td>
<td rowspan="2">
排名
</td>
</tr>
<tr>
<%
foreach (var item in ss.Keys)
{
%>
<td width="100">
<%=ss.Get(item.ToString()) %>
</td>
<%
}
%>
</tr>
<%
int i = 1;
foreach (var item in Model)
{%>
<tr>
<td>
<%=item.UnItName %>
</td>
<td>
<%=item.SumCount %>
</td>
<td>
<%=item.NotApprovedCount %>
</td>
<%
foreach (var key in ss.Keys)
{
%>
<td>
<%=item.Dcits.Get(key.ToString()) %>
</td>
<%
}
%>
<td>
<%=string.Format("{0}%", item.CompleteRate.ToString("0.00"))%>
</td>
<td>
<%
if (i < Model.Count)
{%>
<%=i%>
<%}
%>
</td>
</tr>
<%
i++;
}%>
</thead>
</table>
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
结论:简单的导出,大数据下请自己测试.
MVC 导出Excel 的其中一方法(View导出excel)的更多相关文章
- 从SQL Server中导入/导出Excel的基本方法(转)
从sql server中导入/导出 excel 的基本方法 /*=========== 导入/导出 excel 的基本方法 ===========*/ 从excel文档中,导入数据到sql数据库中,很 ...
- 【原创】.NET读写Excel工具Spire.Xls使用(2)Excel文件的控制
本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html .NET读写Excel工具Spire.Xls使用文章 ...
- asp.net中导出excel数据的方法汇总
1.由dataset生成 代码如下 复制代码 public void CreateExcel(DataSet ds,string typeid,string FileName) { Htt ...
- ASP.net中导出Excel的简单方法介绍
下面介绍一种ASP.net中导出Excel的简单方法 先上代码:前台代码如下(这是自己项目里面写的一点代码先贴出来吧) <div id="export" runat=&quo ...
- C#导出数据到Excel通用的方法类
导出数据到Excel通用的方法类,请应对需求自行修改. 资源下载列表 using System.Data; using System.IO; namespace IM.Common.Tools { p ...
- ASP.NET导出EXCEl方法使用COM.EXCEL不使用EXCEl对象
第一种:导出gridVIEW中的数据,用hansTABLE做离线表,将数据库中指定表中的所有数据按GRIDVIEW中绑定的ID导出 只能导出数据不能去操作相应的EXCEl表格,不能对EXCEL中的数据 ...
- 数据库数据用Excel导出的3种方法
将数据库数据用Excel导出主要有3种方法:用Excel.Application接口.用OleDB.用HTML的Tabel标签 方法1——Excel.Application接口: 首先,需要要Exce ...
- Winform 中 dataGridView 导出到Excel中的方法总结
最近,在做CS端数据导出到Excel中时网上找了很多代码感觉都不是自己想要的,通过自己的整理归纳得到一个比较通用的方法,就给大家分享一下: 该方法需要用到两个参数(即对象),一个 DataGridV ...
- C# 导出 Excel 的各种方法总结
第一种:使用 Microsoft.Office.Interop.Excel.dll 首先需要安装 office 的 excel,然后再找到 Microsoft.Office.Interop.Excel ...
随机推荐
- 使用TortoiseGit对android studio工程进行代码版本控制
阅读下列文章时请保证你是否有以下工具: 1.Android Studio 2.TortoiseGit 和 msysGit 安卓工程版本控制哪些文件可以忽略 可以省略的文件如下: 目录 .gradle ...
- 用libcurl 登录网站
libcurl 可以发送和接收HTTP消息,因此可以发送用户名.密码和验证码来登录网站,网上有不少这方面的内容,但不甚完整,我摸索了两天,将其中要点记录下来. 基本步骤 正常访问登录页面,访问时,设置 ...
- 一次xbuild编译失败的排查
今天一个待上线服务测试完毕,需要构建CI,按照模板配置好包还原,xbuild编译,报错,错误信息如下: EtcdRegister.cs(8,15): error CS0234: The type or ...
- 二.持续集成之--WEB后台
1.系统管理-系统设置:把linux服务器加进去 2.General配置 3.源码管理: 4.构建触发器 5.构建环境 6.构建 7.构建后操作
- Python进制转换
一 内置函数 bin().oct().hex()的返回值均为字符串,且分别带有0b.0o.0x前缀. 实例 统计二进制数里1的个数 def countBits(n): return bin(n).co ...
- 把url参数转化成一个对象返回
var readUrlToParams = function () { var url = location.href; var nameValue; var paraString = url.sub ...
- Twisted随笔
学习了socket后决定尝试使用框架,目标锁定了Twisted. 什么是Twisted? twisted是一个用python语言写的事件驱动的网络框架,他支持很多种协议,包括UDP,TCP,TLS和其 ...
- 架构师养成记--6.单例和多线程、ThreadLocal
一.ThreadLocal 使用wait/notify方式实现的线程安全,性能将受到很大影响.解决方案是用空间换时间,不用锁也能实现线程安全. 来看一个小例子,在线程内的set.get就是thread ...
- Smarty模版引擎的原理
Smarty是一个使用php写出来的模版引擎,用来将原本与html代码混杂在一起PHP代码逻辑分离,实现前后端分离. Smarty模板优点: 1. 速度:采用Smarty编写的程序可以获得最大速度的提 ...
- linux下libevent安装
wget http://monkey.org/~provos/libevent-1.4.13-stable.tar.gz tar –xzvf libevent-1.4.13-stable.tar.gz ...