我寫的SharePoint實現上絲帶一個按鈕來下載多個文件以zip的應用...郵編與Firefox和Chrome
一切順利一個響應內容類型,一切順利。 ..但是,當我試圖與Chrome或Firefox下載zip他們做什麼..
我的代碼是這樣的:
private void WriteStreamToResponse(MemoryStream ms)
{
if (ms.Length > 0)
{
string filename = DateTime.Now.ToFileTime().ToString() + ".zip";
Response.Clear();
Response.ClearHeaders();
Response.ClearContent();
Response.ContentType = "application/zip"; //also tried application/octect and application/x-zip-compressed
Response.AddHeader("Content-Length", ms.Length.ToString());
Response.AddHeader("Content-Disposition", "attachment; filename=" + filename);
byte[] buffer = new byte[65536];
ms.Position = 0;
int num;
do
{
num = ms.Read(buffer, 0, buffer.Length);
Response.OutputStream.Write(buffer, 0, num);
}
while (num > 0);
Response.Flush();
}
}
您是否嘗試過使用真實文件的response.writefile?它使用IE嗎?內容類型頭是正確的(都支持),所以問題在別的地方。嘗試在Flush()之前添加一個Response.End()。 – JotaBe