我正在尝试在C#控制器中编写文件下载功能,以便能够获取共享文件夹中的文件,然后通过网页下载。
所以现在我有1.filename,2.file位置,3。文件扩展名。所以ActionResult看起来像这样:
public ActionResult Downloadfile(string filename, string fileloaction, string extention)
{
...
}
我的Ajax调用是:
$.ajax({
type: 'POST',
cache: false,
url: 'xxx/downloadfile',
data: { 'filename': filename, 'fileloaction': fulllink, 'extention': extention },
success: function () {
...
},//end success
error: function (e) {
console.log(e.statusText);
}//end error
});
那么如何编写Downloadfile
函数以获取文件然后传递给我的ajax?
谢谢!
答案 0 :(得分:0)
您可以使用jquery.fileDownload,这是github上的完整示例 https://github.com/johnculviner/jquery.fileDownload/blob/master/src/Views/FileDownload/Index.cshtml
ASP.Net
[HttpPost, FileDownload]
public FilePathResult DownloadReportPost(int foo)
{
return File("~/Report.pdf", "application/pdf", string.Format("Report{0}.pdf", id));
}
<强>的jQuery 强>
$(document).on("click", "a.fileDownloadPromise", function () {
$.fileDownload($(this).prop('href'))
.done(function () { alert('File download a success!'); })
.fail(function () { alert('File download failed!'); });
return false;
});