HTML JPG PDF XML EML
Aspose.Email  适用于 .NET
EML

使用 C# 大批量生成 EML 格式报告

批量生成 EML 电子邮件,无需 Outlook 或 Thunderbird。

如何使用 C# 生成基于 EML 的报告

为了创建 EML 报告,我们将使用

Aspose.Email for .NET

功能丰富、强大且易于使用的 C# 平台报告生成 API。打开

NuGet

在包管理器中搜索 Aspose.Email 并安装。您也可以使用以下命令在包管理器控制台中执行。

Package Manager 控制台命令


PM> Install-Package Aspose.Email

使用 C# 组装 EML 的步骤

  1. 从 MailMessage 创建模板
  2. 为 Subject、To、From 和 HtmlBody 字段添加动态字段
  3. 使用 MailMessage 对象创建 TemplateEngine
  4. 创建数据源并映射到模板字段
  5. 使用 TemplateEngine.Instantiate 方法批量创建消息
  6. 以 EML 格式保存消息

系统要求

Aspose.Email for .NET 在所有主流操作系统上均受支持。只需确保您具备以下前提条件。

  • Microsoft Windows 或兼容的操作系统,支持 .NET Framework、.NET Core 和 Xamarin 平台
  • 开发环境,如 Microsoft Visual Studio
  • Aspose.Email for .NET 在您的项目中引用
 

EML 消息报告生成的 C# 示例代码


    // create a template from MailMessage
    MailMessage template = new MailMessage();
    // add template field to subject
    template.Subject = "Hello, #FirstName#";
    template.From = new MailAddress("This email address is being protected from spambots. You need JavaScript enabled to view it.", "This email address is being protected from spambots. You need JavaScript enabled to view it.");
    // add template field to receipt
    template.To.Add(new MailAddress("#Receipt#", true));
    // add template field to html body
    template.HtmlBody = "Dear #FirstName# #LastName# Sent Date: #Date#";
    // create a new TemplateEngine with the template message.
    var engine = new Email.Tools.Merging.TemplateEngine(template);
    
    // fill a DataTable
    var dt = new System.Data.DataTable();
    dt.Columns.Add("Receipt", typeof(string));
    dt.Columns.Add("First Name", typeof(string));
    dt.Columns.Add("Last Name", typeof(string));
    dt.Columns.Add("Date", typeof(DateTime));
    System.Data.DataRow dr;
    
    dr = dt.NewRow();
    dr["Receipt"] = "This email address is being protected from spambots. You need JavaScript enabled to view it.";
    dr["First Name"] = "Nancy";
    dr["Last Name:"] = "Davolio";
    dr["Date"] = System.DateTime.Now;
    dt.Rows.Add(dr);
    
    dr = dt.NewRow();
    dr["Receipt"] = "This email address is being protected from spambots. You need JavaScript enabled to view it.";
    dr["First Name"] = "Andrew";
    dr["Last Name"] = "Fuller";
    dr["Date"] = System.DateTime.Now;
    dt.Rows.Add(dr);
    
    dr = dt.NewRow();
    dr["Receipt"] = "This email address is being protected from spambots. You need JavaScript enabled to view it.";
    dr["First Name"] = "Janet";
    dr["Last Name"] = "Leverling";
    dr["Date"] = System.DateTime.Now;
    dt.Rows.Add(dr);
    
    // map columns
    var mappings = new System.Data.Common.DataColumnMappingCollection();
    mappings.Add(new System.Data.Common.DataColumnMapping("Receipt", "Receipt"));
    mappings.Add(new System.Data.Common.DataColumnMapping("First Name", "FirstName"));
    mappings.Add(new System.Data.Common.DataColumnMapping("Last Name", "LastName"));
    mappings.Add(new System.Data.Common.DataColumnMapping("Date", "Date"));
    Aspose.Email.MailMessageCollection messages;
    
    //  create messages from engine
    messages = engine.Instantiate(dt, mappings);
    for (int i = 0; i < messages.Count; i++)
    {
        // save messages in EML format
        messages[i].Save(i + ".eml");
    }
 
  • 关于 Aspose.Email for .NET API

    Aspose.Email 是一个用于解析 Microsoft Outlook 和 Thunderbird 格式的解决方案。您可以轻松创建、操作、转换诸如 MSG、EMLX、EML 和 MHT 等电子邮件及存储格式。处理电子邮件附件、定制消息头以及实现 POP3、IMAP 和 SMTP 等网络协议以收发邮件变得更加容易。它是一个独立的 API,无需安装 Microsoft Outlook 或其他软件。

    免费应用程序用于装配 EML

    查看我们的实时演示以 创建 EML 文件 ,并获得以下好处。

      无需下载或进行任何设置
      无需编写或编译代码
      只需上传 EML 文件并点击 "Assemble" 按钮
      从链接下载生成的 EML 文件

    EML What is EML File Format

    EML 文件格式表示使用 Outlook 和其他相关应用程序保存的电子邮件。几乎所有邮件客户端都支持此文件格式,因为它符合 RFC-822 互联网消息格式标准。Microsoft Outlook 是打开 EML 消息类型的默认软件。EML 文件既可用于保存到磁盘,也可通过通信协议发送给收件人。

    Read More

    其他支持的报告生成格式

    使用 C#,可以轻松生成包括多种格式的报告。

    MBOX (电子邮件消息)
    MSG (Outlook 与 Exchange 格式)
    OST (离线存储文件)
    PST (Outlook 个人存储文件)