Моя проблема: когда пользователь нажимает кнопку изображения на странице aspx, кодовое поле создает zip-файл, а затем я пытаюсь передать этот zip-файл пользователю.
Для потоковой передачи файла я использую следующий код:
FileInfo toDownload = new FileInfo(fullFileName);
if (toDownload.Exists)
{
Response.Clear();
Response.ContentType = "application/zip";
Response.AppendHeader("Content-Disposition", "attachment;filename=" +
toDownload.Name);
Response.AppendHeader("Content-Length", toDownload.Length.ToString());
Response.TransmitFile(fullFileName);
HttpContext.Current.ApplicationInstance.CompleteRequest();
}
Когда я пытаюсь выполнить это, я получаю следующую ошибку на странице:
Sys.WebForms.PageRequestManagerParserErrorException: не удалось проанализировать сообщение, полученное с сервера. Распространенными причинами этой ошибки являются изменения ответа путем вызова Response.Write (), фильтров ответа, HttpModules или трассировки сервера.
Подробности: Ошибка разбора рядом с 'PK ...'.
PK - это первые два символа в zip-файле, которые идентифицируют его как zip-файл, поэтому я знаю, что он пытается отправить zip-файл в браузер. Однако создается впечатление, что браузер пытается интерпретировать и / или визуализировать zip-файл, в то время как я хочу, чтобы он отображал параметр загрузки файла.
Идеи
РЕДАКТИРОВАТЬ: Вот ссылка на сообщение от парня, который написал выше сообщение об ошибке.