I have a ASP.NET app that at one point generates a PDF file and loads the next page. I can easily do this with two separate buttons but it is made much tougher when I try to do this with one button.
When both are fired by the same button the PDF will download but the page will not load. I even had the thread sleep after the file was transmitted but it would wait but then stop afterwards.
I have attached the code that I have been trying to make work:
Response.ContentType = "application/pdf";
Response.AppendHeader("Content-Disposition", "attachment; filename=labels.pdf");
Response.TransmitFile(Server.MapPath("~/"+randomNumber.ToString()+".pdf"));
Server.Transfer("~/createshipment.aspx", true);
You can’t have two different responses from the server but you’re trying to do so.
First – you’d like the server to return a PDF.
Second – you’d like the server to return the
createshipment.aspxpage.This is just against the communication protocol. Probably the best solution is already presented by another user, competent_tech – you could open a new window (javascript’s
window.open) and this new window would return the PDF and in the same time the main window could post to the server and be redirected to thecreateshipment.aspx.