今天狠狠的捣鼓了一下mvc的下载功能,从最终得到的结论和查询到的知识就是,只能用form表单提交或者iframe的形式去请求一个下载链接,不能用ajax,因为ajax的返回类型都是xml、text、json、html,没有“流”这个概念,而下载是返回的文件流,所以最好的办法是通过JS动态生成一个表单,然后提交上去。
这里有一点坑的是,通过这种方式,只能把JS组装好的数据,赋值给表单里动态生成的input,而input提交到后台的数据,没有array类型!所以如果JS里获得的是array类型,那就只能通过字符串拼接的方式去传递了!