下面是我的代碼:如何下載通過Ajax請求文件在asp.net MVC 4
ActionResult DownloadAttachment(student st)
{
var file = db.EmailAttachmentReceived.FirstOrDefault(x => x.LisaId == st.Lisaid);
byte[] fileBytes = System.IO.File.ReadAllBytes(file.Filepath);
return File(fileBytes, System.Net.Mime.MediaTypeNames.Application.Octet, file.Filename);
}
這是我使用
$(function() {
$("#DownloadAttachment").click(function() {
$.ajax({
url: '@Url.Action("DownloadAttachment", "PostDetail")',
contentType: 'application/json; charset=utf-8',
datatype: 'json',
type: "GET",
success: function() {
alert("sucess");
}
});
});
});
如何返回文件腳本尋求上述代碼下載?
感謝那些工作,但如果我有這樣一個參數: 公衆的ActionResult DownloadAttachment(學生學生){ var文件=分貝.EmailAttachmentReceived.FirstOrDefault(x => x.LisaId == student.LisaId); }。在這種情況下,我必須將模型傳遞給downloadattachment,那麼我將如何追求?我已更新問題 –
您是否更容易將模型ID傳遞給動作,然後通過ID找到您的學生,並根據學生模型數據做任何您想要的。我已經更新了答案。 –
基本上,如果我們不給ajax調用仍然可以通過window.location下載文件,這只是因爲我們需要ajax請求,我們使用相同的成功函數感謝您的幫助。 –