asp.net-mvc – 如何使用MVC 3将文本数据导出到csv?
发布时间:2020-12-16 07:28:25 所属栏目:asp.Net 来源:网络整理
导读:我需要将文本数据导出到MVC3中的csv. 我做以下事情: 视图: $(".export").click(function() { $.get("@Url.Action("Export","Log")");}); 控制器: public ActionResult Export() { var sb = new StringBuilder(); var list = this.systemLogRepository.Get
我需要将文本数据导出到MVC3中的csv.
我做以下事情: 视图: $(".export").click(function() { $.get("@Url.Action("Export","Log")"); }); 控制器: public ActionResult Export() { var sb = new StringBuilder(); var list = this.systemLogRepository.GetFilterList( null,this.ControllerContext.RequestContext.HttpContext.Request.QueryString,null); foreach (var item in list) { sb.AppendFormat( "{0},{1},{2},{3},{4}",item.Machine.Name,item.PackageID,item.ErrorDescription,item.OccurenceTime,Environment.NewLine); } return this.File(new UTF8Encoding().GetBytes(sb.ToString()),"text/csv",string.Format("Log-{0}.csv",DateTime.Now.ToString("g").Replace("/","-").Replace(":","_").Replace(" ","-"))); } 这将返回内容,但不会弹出具有“另存为”和“打开”选项的窗口 解决方法
不要使用AJAX下载文件.使用普通链接或按钮:
@Html.ActionLink("export to CSV","Export","Log") 现在你可以摆脱javascript位了.您无法使用AJAX下载文件的原因是因为内容确实会传输到客户端,但您无法从javascript打开“另存为”对话框. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 带有IIS且没有Node.js的Angular2
- AMF学习2远程调用的封装
- C#_.NetFramework_Web项目_NPOI_EXCEL数据导入
- 运行SonarQube针对ASP.Net核心解决方案/项目
- asp.net – Windows Workflow Foundation的替代方案
- asp.net-mvc – 带有MVC样式存储库的.NET RIA服务?
- asp.net-mvc – 将MVC添加到现有的ASP.net网站
- asp.net-mvc – ASP.NET身份和声明
- asp.net – web.config中system.codedom中多个编译器定义的
- 修改服务器配置 让asp.net文件后缀名随心所欲
推荐文章
站长推荐
- asp.net-mvc – Web API的压缩过滤器
- .net – IIS 6.0和ASPX中的404自定义错误不起作用
- asp.net – 拒绝访问web.config中的“admin”文件
- asp.net – 程序或函数期望未提供的参数
- asp.net – 如何在Dotnetnuke中更改Radcaptcha的
- asp.net-mvc – 从Visual Web Developer Express
- asp.net-mvc – 当ModelState为InValid时调用的A
- asp.net – 用于验证的数据注释,至少一个必填字段
- asp.net-mvc – ASP.NET MVC:从视图调用控制器方
- asp.net – 单个站点上的多个应用程序 – 会话和
热点阅读