Я отображаю pdf на своей странице следующим образом:
<object data="/Customer/GetPricedMaterialPDF?projID=<%= ViewData["ProjectID"]%>"
type="application/pdf" width="960" height="900" style="margin-top: -33px;">
<p>
It appears you don't have a PDF plugin for this browser. No biggie... you can <a
href="/Customer/GetPricedMaterialPDF?projID=<%= ViewData["ProjectID"]%>">click
here to download the PDF file. </a>
</p>
</object>
и функции контроллера равны
public FileStreamResult GetPricedMaterialPDF(string projID)
{
System.IO.Stream fileStream = GeneratePDF(projID);
HttpContext.Response.AddHeader("content-disposition",
"attachment; filename=form.pdf");
return new FileStreamResult(fileStream, "application/pdf");
}
private System.IO.Stream GeneratePDF(string projID)
{
//create your pdf and put it into the stream... pdf variable below
//comes from a class I use to write content to PDF files
System.IO.MemoryStream ms = new System.IO.MemoryStream();
Project proj = GetProject(projID);
List<File> ff = proj.GetFiles(Project_Thin.Folders.IntegrationFiles, true);
string fileName = string.Empty;
if (ff != null && ff.Count > 0 && ff.Where(p => p.AccessToUserID == CurrentCustomer.CustomerID).Count() > 0)
{
ff = ff.Where(p => p.AccessToUserID == CurrentCustomer.CustomerID).ToList();
foreach (var item in ff)
{
fileName = item.FileName;
}
byte[] bArr = new byte[] { };
bArr = GetJDLFile(fileName);
ms.Write(bArr, 0, bArr.Length);
ms.Position = 0;
}
return ms;
}
Теперь моя проблема в том, что на контроллере требуется 10-20 секунд для обработки pdf,
data="/Customer/GetPricedMaterialPDF?projID=<%= ViewData["ProjectID"]%>"
в то время моя страница была пустой, чего я не хочу.я хочу показать загрузку изображения в то время.Как я могу это сделать ...