asp.net - 如何让asp.net下载动态csv

标签 asp.net vb.net csv

ENV:Asp.Net Vb/Visual Studio 2010/.Net 4 IIS Express 和 IIS 6

我有一个名为 download.aspx 的页面,它从数据库创建 csv 数据,但无法让浏览器使用正确的文件名下载它。我的理解是 Content-Disposition 给它一个文件名,但下载始终是我的页面的名称,而不是 download.aspx。

我确信我对其工作原理有误解,并且我在这里搜索了指导,但似乎无法找到任何可行的解决方案。我有以下内容:

    Response.Clear()
    Response.ContentType = "text/csv"
    Response.AppendHeader("Content-Disposition", "attachment: filename=leadership.csv")
    Response.Write("test,test,test")
    Response.Flush()
    Response.End()

我尝试过“application/csv”和“application/x-download”,没有任何区别。我还在具有相同文件名问题的 .ashx 文件中尝试过它。如何才能将文件下载为 Leadership.csv 而不是 download.aspx?

最佳答案

Content-Dispostion header 错误。值(value)

attachment: filename=leadership.csv

应该是(带有可选空格)

attachment; filename=leadership.csv

请注意,用于分隔 header 和值的 : 已更改为 ;,用于分隔子值。

此外,我建议使用来生成 CSV(如果还没有的话)..

关于asp.net - 如何让asp.net下载动态csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12059652/

相关文章:

javascript - 在 Javascript 中使用 vb.net 代码

vb.net - AndAlso OrElse 可能异常缓慢

.net - Dataset.ReadXml() 是否将其表中的所有列数据类型设置为字符串?

sql-server - 如何在不渲染的情况下将 SSRS 报告直接导出到 csv

r - Shiny 的应用程序错误源调试

c# - C# 中的 Math.Round 可以用于整数值吗?

asp.net - 请求“System.Data.SqlClient.SqlClientPermission”类型的权限失败

c# - 在运行时替换 href 值

jquery - datepicker undefined 不是一个函数

python - 在 python 中使用 scikit-learn 线性回归模型时出错