【发布时间】:2011-06-21 17:43:05
【问题描述】:
我正在开发一个数据采集网络应用程序,主要针对 iPad 的使用。多个用户将主要在 iPad 上捕获数据,但随后管理员通常会将所有捕获的记录下载到 PC 上。
尽管文件下载主要针对 PC,但我正在考虑是否应该尝试支持将文件下载到 iPad 本身。
服务器应用程序是一个 MVC2 ASP.NET 应用程序,我正在使用一个返回文件结果的控制器。测试代码如下:
public ActionResult DownloadResponseData(string profileid)
{
string billcsv = "account_ref,line1,line2,line3";
var data = System.Text.Encoding.UTF8.GetBytes(billcsv);
string filename = "billfor.csv";
return File(data, "text/csv", filename);
}
尽管大多数人会下载到他们的 PC,因为我支持全屏 iPad 使用,我使用以下客户端代码来启动文件下载:
var url="/Download/DownloadResponseData?profileid=" + downloadRequest.profileid + "&unique=" + escape(Date());
window.open(url);
这适用于非 iPad 使用 - 它可以很好地在 Chrome 中下载文件。
我的问题很多:将 CSV 文件下载到 iPad 是否有意义? iPad 是否支持 CSV?是否需要 iPad 上的其他软件才能查看 CSV 文件?我应该如何更改上述代码以“干净”地下载到 iPad?
当我在 iPad 上运行上面的代码时,它只是在 iPad 窗口中显示整个 CSV 文件内容 - 它似乎没有将 http 响应识别为文件。
对不起,这个相当迟钝的问题。谢谢。
【问题讨论】:
标签: ipad asp.net-mvc-2 csv download