在 asp .net webforms c# 中生成插入行值的 pdf

Generate pdf of the inserted row values in asp .net webforms c#

有一个简单的 asp.net webform 将数据插入到与公共 ID 相关的三个表中。

Table A : ID(P.K), Name.
Table B : B_Id(P.K), ID(F.K references ID of Table A), Address.
Table C : C_Id(P.K), ID(F.K references ID of Table A), Contact.

在这种情况下我可以使用什么来生成 pdf 报告?

感谢代码示例。 预先感谢您的回答!

您可以使用:

https://help.syncfusion.com/file-formats/pdf/create-pdf-file-in-asp-net-web-forms

最好的解决方法是制作一个 zip 文件,然后执行 Response.Write(zipFile)

但是如果您仍然坚持将它们分开(多次下载)最好先通过以下方式将每个文件保存在服务器上:

using (HtmlTextWriter hw = new HtmlTextWriter(sw))
{
  Page.RenderControl(hw);
  StringReader sr = new StringReader(sw.ToString());
  Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 10f, 0f);
  PdfWriter.GetInstance(pdfDoc, new FileStream(Server.MapPath("~") + pdfName + ".pdf");
} 

然后使用这个技巧来支持多重下载。请注意,这将适用于现代浏览器。

var links = [
  'https://s3.amazonaws.com/Minecraft.Download/launcher/Minecraft.exe',
  'https://s3.amazonaws.com/Minecraft.Download/launcher/Minecraft.dmg',
  'https://s3.amazonaws.com/Minecraft.Download/launcher/Minecraft.jar'
];

function downloadAll(urls) {
  var link = document.createElement('a');

  link.setAttribute('download', null);
  link.style.display = 'none';

  document.body.appendChild(link);

  for (var i = 0; i < urls.length; i++) {
    link.setAttribute('href', urls[i]);
    link.click();
  }

  document.body.removeChild(link);
}
<button onclick="downloadAll(window.links)">Test me!</button>

用于创建 pdf。您还可以使用报告服务 rdlc 报告。它是 visual studio 的一部分。它支持阿拉伯语和波斯语的 RTL。 您可以在后台呈现报告。

在将记录保存到数据库时,我获取了它们并执行了 pdf 生成,并通过电子邮件附件发送了它。

Link: https://www.aspsnippets.com/Articles/Generate-Create-PDF-and-send-as-email-attachment-in-ASPNet.aspx

这解决了我的问题。