Проблемы с загрузкой PDF-файла на локальный ПК - PullRequest
1 голос
/ 04 мая 2020

Я пытаюсь загрузить файл PDF, созданный с помощью PDFsharp, с веб-сервера и в локальную папку загрузки P C. Я много гуглил и много пробовал безуспешно. Я могу правильно создать файл PDF и сохранить его на диск, но не могу передать / загрузить его в локальную папку загрузки P C.

Я пробовал следующий код:

string filename = Server.MapPath("~\\Files\\Temp\\file.pdf");
document.Save(filename); //generate the physical file

MemoryStream stream = new MemoryStream();
document.Save(stream, false);
Response.Clear();
Response.ContentType = "application/pdf";
Response.AddHeader("content-length", stream.Length.ToString());
Response.BinaryWrite(stream.ToArray());
Response.Flush();
stream.Close();
Response.End();

Так что я делаю не так?

1 Ответ

0 голосов
/ 05 мая 2020

Отсутствует Content-Disposition:

Response.AddHeader("Content-Disposition", "attachment;filename=test.pdf"); 
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Length", binfile.Length.ToString());
Response.BinaryWrite(binfile);

если у вас есть панель обновлений, вы должны установить кнопку как триггер обратной передачи

  <asp:UpdatePanel runat="server">
        <Triggers>
            <asp:PostBackTrigger ControlID="btnID" />
        </Triggers>
        <ContentTemplate></ContentTemplate>
    </asp:UpdatePanel>
...