我尝试了几种下载方式。在SO,CP或谷歌搜索了几个解决方案。我没有看到任何错误或编译器运行正常。浏览器表现良好。只是下载不起作用。这是下载代码部分。
.cs文件
[HttpGet]
public ActionResult Download()
{
string[] s = new string[2];
using (StreamReader sr = new StreamReader(Server.MapPath("~\\test.txt")))
{
int i = 0;
while (sr.Peek()>=0)
{
s[i] = sr.ReadLine();
i++;
}
}
return File(s[0], "application/zip", s[1]);
}
.cshtml
<input type="button" id="btnDownload" value="Download" />
javascript代码
$("#btnDownload").click(function () {
$.ajax({
url: '@Url.Action("Download", "Image")',
type: 'GET',
async: false,
cache: false,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (data) {
alert(1);
window.location = '@Url.Action("Download", "Image")';
}
});
});
在ajax请求中没有成功提醒。转到下载方法。 文本文件没问题。和文件名和路径也是正确的。
但我认为,行中的任何内容都是错误的
return File(s[0], "application/zip", s[1]);