ABC Pdf mobile 无法正确下载 pdf

ABC Pdf mobile not downloading pdf correctly

我正在做一个 c sharp MVC 项目,并将 HTML 页面之一渲染为 PDF。 当我从桌面版调用它时,PDF 会自动下载,而不会重定向我。 但是当我在 page.mobile.cshtml 上并按下下载 pdf 按钮时,它会将我重定向到 url 以获取 GetPDF 方法。如果我然后刷新该站点,它会下载 pdf。

我哪里做错了,是不是移动视图的某些路由设置有问题?

这是我的 getPdf 方法:

public void getPdf(string snr, string bnr, int bgn)
        {
            Doc theDoc = new Doc();
            theDoc.Clear();
            theDoc.FontSize = 16;

            theDoc.Page = theDoc.AddPage();

            int theID;

            string url = this.Url.Action("TicketPdf", "Home", new { supplierCode = snr, bookingNr = bnr, bgn = bgn }, this.Request.Url.Scheme);

            theID = theDoc.AddImageUrl(url);

            while (true)
            {
                theDoc.FrameRect();
                if (!theDoc.Chainable(theID))
                    break;
                theDoc.Page = theDoc.AddPage();
                theID = theDoc.AddImageToChain(theID);
            }

            for (int i = 1; i <= theDoc.PageCount; i++)
            {
                theDoc.PageNumber = i;
                theDoc.Flatten();
            }

            byte[] theData = theDoc.GetData();
            Response.Clear();
            Response.ContentType = "application/pdf";
            //Response.AddHeader("content-disposition", "inline; filename=ticket.PDF");
            Response.AddHeader("content-length", theData.Length.ToString());

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

            Response.BinaryWrite(theData);
            Response.End();

        }

在两种视图(桌面和移动)上,我都这样称呼它:

@Html.ActionLink("Download pdf", "getPDF", new { snr = @bok.CBSupplierId, bnr = @bok.CBBookingCode, bgn = (int)bok.Id })

因此,当我在桌面视图中按 link 时,它会下载 PDF 而不会重定向我。但是当我在使用 jquery mobile 构建的移动视图中按下它时,它会将我重定向到:/Home/getPDF?sn​​r=22558&bnr=IWVY99&bgn=4391

通过将 rel = "external" 添加到移动视图中的 link 设法解决了这个问题。