C# ASP.Net-使用web方法打开PDF
只是想知道是否有可能使用一种称为使用AJAX的web方法打开PDF?要打开的文件存储在服务器上的临时目录中 有人对如何实现这一目标有什么建议吗C# ASP.Net-使用web方法打开PDF,c#,asp.net,ajax,webmethod,C#,Asp.net,Ajax,Webmethod,只是想知道是否有可能使用一种称为使用AJAX的web方法打开PDF?要打开的文件存储在服务器上的临时目录中 有人对如何实现这一目标有什么建议吗 谢谢大家 Oded为您提供了最好的解决方案,但如果您仍想这样做,请看下面的内容: 您可以使用这个jquery 您的网页将具有超链接: <a id="PrintAjaxReport" href="javascript:{}">Print report Ajax</a> PdfReport.aspx public partial c
谢谢大家 Oded为您提供了最好的解决方案,但如果您仍想这样做,请看下面的内容: 您可以使用这个jquery 您的网页将具有超链接:
<a id="PrintAjaxReport" href="javascript:{}">Print report Ajax</a>
PdfReport.aspx
public partial class PdfReport : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
var pdfDocumentName = Request.Params["filename"].ToString() + ".pdf";
var myReport = "Razor Syntax Quick Reference.pdf";
var FileName = Path.Combine(Path.Combine(Server.MapPath("~"), "Temp"), myReport);
Response.Clear();
Response.ClearHeaders();
Response.ClearContent();
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Type", "application/pdf");
Response.AddHeader("content-disposition", "attachment; filename=" + pdfDocumentName);
Response.TransmitFile(FileName);
Response.End();
}
}
您可以找到一个示例(OpenPDFjQuery)。如果文件很大,您需要以某种方式显示下载进度,那么您应该参考这里:简单链接不起作用的原因是什么?您是否试图在服务器端读取pdf?
public partial class PdfReport : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
var pdfDocumentName = Request.Params["filename"].ToString() + ".pdf";
var myReport = "Razor Syntax Quick Reference.pdf";
var FileName = Path.Combine(Path.Combine(Server.MapPath("~"), "Temp"), myReport);
Response.Clear();
Response.ClearHeaders();
Response.ClearContent();
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Type", "application/pdf");
Response.AddHeader("content-disposition", "attachment; filename=" + pdfDocumentName);
Response.TransmitFile(FileName);
Response.End();
}
}