Réponse.AddHeader(“Content-Disposition”) de ne pas l'ouverture d'un fichier dans IE6

Je suis en utilisant la Réponse.AddHeader("Content-Disposition", "attachment; filename=" + Serveur.HtmlEncode(FileName)); de la pop une "ouvrir/enregistrer le fichier" boîte de dialogue pour les utilisateurs, de sorte qu'ils peuvent télécharger un fichier sur leurs machines locales.

Ce travail est bon, normalement, dans IE7,Mais sous IE6 le fichier ne s'ouvre pas lorsque l'utilisateur cliquera sur le bouton ouvrir dans "ouvrir/enregistrer le fichier" boîte de dialogue. J'ai parcouru le net et découvert que
Réponse.AddHeader("Content-Disposition", "inline; filename="+Serveur.HtmlEncode(FileName));
devrait être de fournir à travailler que dans IE6,et sa fonctionne très bien..

Mais le problème est que la plupart des fichiers que peut ouvrir dans le navigateur s'ouvre sur la page elle-même.. c'est à dire de l'utilisateur sur une page de messagerie et cliquez sur télécharger un fichier image, il s'ouvre là, j'en ai besoin pour ouvrir dans une autre fenêtre comme dans le cas de IE7 ce que je peux faire... d'autres fichiers qui ne peuvent pas ouvrir en bowser ouvrir avec l'application en cours dans le système d'ie(word,excel, etc)..

s'il vous plaît suggérer une méthode pour coller avec le même code pour les deux S... Le Code que j'ai utilisé est ici....

Response.AddHeader("Content-Disposition", "attachment; filename=" +FileName);
Response.AddHeader("Content-Length", file.Length.ToString());
Response.ContentType = ReturnExtension(file.Extension.ToLower());
Response.TransmitFile(file.FullName);
Response.End();

 private string ReturnExtension(string fileExtension)
    {
        switch (fileExtension)
        {
            case ".txt":
                return "text/plain";
            case ".doc":
                return "application/ms-word";
            case ".xls":
                return "application/vnd.ms-excel";
            case ".gif":
                return "image/gif";
            case ".jpg":
            case "jpeg":
                return "image/jpeg";
            case ".bmp":
                return "image/bmp";
            case ".wav":
                return "audio/wav";
            case ".ppt":
                return "application/mspowerpoint";
            case ".dwg":
                return "image/vnd.dwg";
            default:
                return "application/octet-stream";
        }
    }
Pourquoi êtes-vous HTML de codage, le nom de fichier? Les en-têtes HTTP sont pas en HTML.
yh itz une erreur, j'ai supprimé, mais il ne marche pas résoudre le problème..
j'ai ma solution de la partie de votre question, merci 🙂

OriginalL'auteur deepu | 2010-10-08