2010-12-28 13 views
1

ich eine ASP.NET-Endpunkt haben, die mit einigen params eine Anforderung für eine Datei dauert, findet heraus, welche Datei und so etwas wie dies tut zu dienen:ASP.net Download-Link herunterladen Fenster manchmal erscheint

... 
if (File.Exists(zipPath)) 
{     
    string fileSaveName = "YourZip.zip";     

    Response.ContentType = "application/octet-stream"; 
    Response.AppendHeader("Content-Disposition", 
        "attachment; filename=\"" + fileSaveName + "\""); 
    Response.TransmitFile(zipPath); 
    Response.End(); 
} 
else 
{ 
    Throw404(); 
} 

Das Problem ist sowohl in Firefox als auch in Chrome (habe IE nicht überprüft), es öffnet sich kein Download-Fenster und es wartet, bis alles heruntergeladen ist, und lädt die Datei sofort herunter. Irgendwelche Ideen, warum oder bessere Möglichkeiten, dies zu tun?

Antwort

0

Für einen seltsamen Grund ich mit dem folgenden Code auf der Seite hatte, die den Reißverschluss geliefert:

private void SetPageCachingToZero() 
    { 
     Response.ExpiresAbsolute = DateTime.Now.AddDays(-1d); 
     Response.Expires = -1500; 
     Response.CacheControl = "no-cache"; 
    } 

Dieser keinen Unterschied in Chrome oder Firefox gemacht, aber gemeint in IE musste ich zweimal auf den Link klicken. Zum ersten Mal würde es scheitern.

Verwandte Themen