Я делаю вызов AJAX для создания PDF-отчета из кристалла.Как открыть сгенерированный PDF-файл в MVC
Проблема заключается в том, как открыть PDF напрямую.
Ниже приведены мои материалы. Похоже, pdf создан, но он просто возвращается к просмотру и не может открыть PDF.
Прошу вас, руководствоваться.
Код:
public ActionResult CreatePDF(string paramValue)
{
DataTable dt = new DataTable();
DataColumn dc = new DataColumn("FieldName");
dt.Columns.Add(dcinitial);
DataRow dr = dt.NewRow();
dr[0]=paramValue;
dt.Rows.Add(dr);
ReportDocument oRpt = new ReportDocument();
string path = Server.MapPath("~/PDFDocs/crystalreport.rpt");
oRpt.Load(path);
oRpt.SetDataSource(dt);
MemoryStream oStream = new MemoryStream();
oStream = (MemoryStream)oRpt.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/pdf";
string fileName = "Report";
Response.AppendHeader("content-disposition", "attachment; filename=" + fileName);
Response.BinaryWrite(oStream.ToArray());
Response.End();
return View();
}
Благодаря
ОК, все будет хорошо, хотя я назову это действие с помощью AJAX? – dsi
@Dhaval: Я просто добавил несколько подробностей к этому вопросу: короткая версия заключается в том, что вы * можете * обрабатывать загрузку файла через AJAX (вероятно, с использованием плагина где-то), но в идеале это не будет 't быть вызовом AJAX. – David