单击提交时创建PDF和发送电子邮件

时间:2016-01-29 17:23:49

标签: c# asp.net webforms

我有一个要选择的产品的复选框列表,另有一个数量的文本条目。单击“提交”后,我需要执行两个操作: 1)我想让客户选择并输入电子邮件(带有给定的电子邮件地址)并通过电子邮件发送给带有日期时间戳的(创建)PDF附件。 2)点击提交按钮后的下一页,应该生成带有电子邮件确认消息的下一页/另一页和带有日期时间戳的PDF附件的打印按钮。 这个webform还有很多其他的东西,但这是我需要一些指导的领域,任何链接或代码示例,以帮助我找到一个适当的解决方案,你可以在这里回复我将不胜感激。

2 个答案:

答案 0 :(得分:2)

对于PDF创建,有几种工具 - 我使用过iTextSharp。您可以在VS上下载nuget包,可以找到示例代码here。您可能希望使用表格使其看起来不错,但要习惯它,可能只是抛出一些信息以了解它是如何工作的。

该方法可能如下所示:

Microsoft ASP.NET SignalR Self Host

对于电子邮件,.Net有System.Net.Mail.MailMessage类。您可以将pdf作为流附加。你需要定义to,from,subject,body等。这看起来像这样:

public byte[] CreateOrderPdf(OrderDetails details)
{
    byte[] fileBytes;
    using (MemoryStream PdfStream = new MemoryStream())
    {
        iTextSharp.text.Document doc = new iTextSharp.text.Document();
        PdfWriter writer = PdfWriter.GetInstance(doc, PdfStream);

        doc.Open(); 
        doc.Add(new Paragraph(OrderDetails.Name));
        doc.Add(new Paragraph(OrderDetails.Address)); 
        //Add More Tables and Content Here (See Documentation for more)

        doc.Close();
        fileBytes = PdfStream.ToArray(); 
    }
    return fileBytes
}

希望这对你来说是一个很好的起点。

答案 1 :(得分:0)

在我寻找解决方案并提出起点时,我偶然发现了这一点,我也会在寻找相同答案的任何人看到spire.pdf,请访问www.e-iceblue.com/Introduce/pdf-对于净introduce.html