Я работаю над отчетом, который требует загрузки нескольких файлов PDF в один zip-файл, а также создания нового файла PDF и сохранения этого нового файла на сервере.Я использую DotNetZip
и Rotativa
для zip и pdf файлов.
В настоящее время у меня есть это в моих Controller
:
[HttpGet]
public ActionResult GetReport()
{
var test2 = new ActionAsPdf("ContractorReportNew");
var zip = new ZipFile();
zip.AddFile("MyFile.zip", "Orders");
string zipName = string.Format("Contractor Report{0}.zip", DateTime.Now.ToString("dd-MMM-yyyy-HH:mm:ss"));
using (MemoryStream memoryStream = new MemoryStream())
{
zip.Save(memoryStream);
return File(memoryStream.ToArray(), "application/zip", zipName);
}
}
И
[HttpGet]
public ActionResult ContractorReportNew()
{
//Data from DB
var test = new ViewAsPdf("Contractor_report")
{
MinimumFontSize = 14,
PageOrientation = Rotativa.Options.Orientation.Landscape,
PageSize = Rotativa.Options.Size.A4,
};
var abc = test.BuildFile(this.ControllerContext);
System.IO.File.WriteAllBytes(path, abc);
MemoryStream ms = new MemoryStream(abc);
return new FileStreamResult(ms, "application/pdf");
}
Как я могу достичь того, что мне нужно?
Любая помощь будет высоко ценится.