简体   繁体   中英

Open PDF in Adobe Reader, not in Browser

when clicked from a link on an email, the following code causes a PDF document to open in the browser:

Response.ContentType = mime;
Response.WriteFile(path);
HttpContext.Current.ApplicationInstance.CompleteRequest();

Is there any way to force the client to open it natively in the Adobe Acrobat/reader?

How the client behaves depends on several things including client-side settings... you could try this

Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment; filename="+filePath); 
Response.WriteFile(path);
HttpContext.Current.ApplicationInstance.CompleteRequest();
Response.ContentType = "application/pdf";
Response.AppendHeader("Content-Disposition","attachment; filename=SailBig.pdf");
Response.TransmitFile( Server.MapPath("~/images/sailbig.pdf") );
Response.End();

here's some good information to help: Downloading a File with a Save As Dialog in ASPNET , and c# dynamically rename file upon download request , and Handling file downloads using ASP.NET MVC if you're using MVC

The best thing you can do is adding a content-disposition header. This should cause a download file dialog to appear.

Response.AddHeader("content-disposition", "attachment;filename=xxx.pdf");

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM