Итак, у меня есть страница, на которой я динамически генерирую таблицу и кнопки ссылок внутри большой панели обновления. Каждая кнопка ссылки при нажатии будет вызывать этот метод. Цель состоит в том, чтобы иметь ссылку на файл в моей БД и при щелчке по нему разрешать пользователю открывать / сохранять этот файл. Этот точный метод отлично работает на другой странице моего сайта с такой же настройкой, но на этом я получаю:
Ошибка времени выполнения Microsoft JScript: Sys.WebForms.PageRequestManagerParserErrorException: Не удалось проанализировать сообщение, полученное с сервера. Распространенные причины этой ошибки: изменение ответа путем вызова Response.Write (), фильтров ответа, HttpModules или трассировки сервера.
Подробности: Ошибка разбора около '% PDF-1.3
%
1 0 ob '.
public void downloadFile(int fileID)
{
using (SurveyDataContext context = new SurveyDataContext())
{
try
{
var file = context.tblFiles.Single(f => f.FileID == fileID);
Response.Clear();
Response.Buffer = true;
Response.BufferOutput = true;
Response.ContentType = file.MIMEtype;
Response.AppendHeader("Content-Disposition", "attachment; filename=\"" + file.FileName.Trim() + "\"");
Response.AddHeader("Extension", file.FileName.Substring(
file.FileName.LastIndexOf('.') + 1).ToLower());
Response.BinaryWrite(file.FileData.ToArray());
Response.Flush();
Response.End();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
Console.WriteLine(e.InnerException);
}
}
}
Что я делаю не так? Я не делаю никаких ответов. Этот метод является единственным, который касается ответа. Есть ли какой-то другой способ, которым я должен делать это?