IE добавляет заголовок http PRAGMA: без кэширования - PullRequest
1 голос
/ 03 ноября 2011

В настоящее время я занимаюсь разработкой сайта с использованием SSL, который требует, чтобы пользователи могли загружать файлы разных типов (например, файлы Excel или Word), а затем каждый элемент будет добавлен в сетку.Пользователь может затем «щелкнуть» на элементе в сетке, и элемент, который он загрузил, будет отображен.Проблема, с которой я сталкиваюсь, заключается в том, что Internet Explorer добавляет заголовок Pragma: «no-cache» к ответу, который блокирует пользователю просмотр / сохранение файла, если это файл с типом содержимого «application / ~».,Когда я пытаюсь сделать что-то вроде

Response.Headers.Remove("Pragma");

, я получаю эту ошибку: Эта операция требует интегрированного режима конвейера IIS. Может кто-нибудь помочь мне понять, что вызывает это и что мне нужно сделатьобойти это?

1 Ответ

1 голос
/ 03 ноября 2011

HttpResponse.Headers свойство:

Свойство Headers поддерживается только в режиме интегрированного конвейера IIS 7.0 и, по крайней мере, .NET Framework 3.0.Когда вы пытаетесь получить доступ к свойству Headers и ни одно из этих двух условий не выполняется, выдается исключение PlatformNotSupportedException.

Решение здесь: «Для этой операции требуется режим интегрированного конвейера IIS»

Response.AddHeader("Content-Disposition", "attachment; filename=enrollments.csv");
Response.AddHeader("Pragma", "public");
...