Я столкнулся с очень странной проблемой в моем приложении ASP.NET.
Когда пользователь нажимает кнопку, которая загружает файл, Internet Explorer / Chrome / Firefox показывает диалоговое окно сохранения, но имя файла - это имя страницы ASPX (Например, если страница называется Download.aspx, в диалоговом окне загрузки отображается «файл» Download.zip). Иногда при игре с MIME-типом диалог загрузки показывает «Download.aspx». Кажется, вы пытаетесь загрузить страницу, но на самом деле это правильный файл.
Это происходит с расширением ZIP, и вот мой код (я думаю, довольно стандартный):
this.Response.Clear();
this.Response.ClearHeaders();
this.Response.ClearContent();
this.Response.AddHeader("Content–Disposition", "attachment; filename=" + file.Name);
this.Response.AddHeader("Content-Length", file.Length.ToString());
this.Response.ContentType = GETCONTENTYPE(System.IO.Path.GetExtension(file.Name));
this.Response.TransmitFile(file.FullName);
this.Response.End();
Функция GetContentType просто возвращает MIME для файла. Я пробовал с application / x-zip-сжатым , multipart / x-zip и, конечно, application / zip . С приложением / zip Internet Explorer 8 показывает ошибку XML.
Любая помощь с очень признательна.
Привет,