我正在嘗試寫一個文件到響應下載。我用:如何將文件寫入Internet Explorer Mobile的響應?
Response.Clear();
Response.AddHeader("content-disposition", "attachment;filename=" + name);
Response.ContentType = GetMimeType(path);
Response.BinaryWrite(File.ReadAllBytes(path).ToArray());
Response.End();
這適用於多個桌面瀏覽器。但是,在Windows Phone 8設備上的Internet Explorer Mobile 10上,它會失敗。正如預期的那樣,我得到一個屏幕顯示消息「點擊打開」。
然而,當我點擊郵件,它定位到與URL「默認[X]熱媒」空白頁。到目前爲止,「x」已經是1,2和3。如果我將頁面添加到我的收藏夾,則可以看到Default [x] .html的完整URL爲「file:// C:\ Data \ Users \ DefApps \ AppData \ INTERNETEXPLORER \ INetCache \ WNW0K564 \ Default [x]」。 HTM」。
這是相同的,無論該文件的擴展名或MIME類型是什麼。我很難理解爲什麼會發生這種情況。是否有另一種方法將文件寫入與IE Mobile兼容的響應中?
正如我所說的,無論文件擴展名還是MIME類型,都會失敗。舉一個例子,我覈實情況是:
filename: themes.ppt, MIME Type: application/vnd.ms-powerpoint
所有文件下載罰款,如果鏈接直接,但我不能出於安全原因這樣做。我不想臨時複製這些文件並鏈接到這些副本,但是如果我找不到將它們寫入響應的方法,我將不得不這樣做。
有多大文件,有什麼IIS版本是你使用和你在調試模式? – user2154065 2013-03-17 06:20:00
這些文件的大小從0.1MB到5MB不等。我正在使用IIS 7,並且我不處於調試模式。 – msbg 2013-03-17 06:23:26