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

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

批量生成电子邮件并通过 .NET API 添加到 PST 文件。

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

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

Aspose.Email for .NET

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

NuGet

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

Package Manager 控制台命令


PM> Install-Package Aspose.Email

使用 C# 组装 PST 的步骤

  1. 将 MailMessage 作为模板并添加动态字段
  2. 创建数据源和映射
  3. 使用 MailMessage 对象初始化 TemplateEngine
  4. 调用 TemplateEngine.Instantiate 方法批量生成消息
  5. 使用 PersonalStorage.Create 方法创建新 PST
  6. 在 PST 中添加文件夹
  7. 使用 FolderInfo.Add 方法将 TemplateEngine 中的消息添加到文件夹
  8. 以 PST 格式保存

系统要求

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

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

PST 消息报告生成的 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 new PST
    var pst = Email.Storage.Pst.PersonalStorage.Create("storage.pst", Email.Storage.Pst.FileFormatVersion.Unicode);
    // add folder to PST
    var inboxFolder = pst.RootFolder.AddSubFolder("Inbox");
    
    //  create messages from engine
    messages = engine.Instantiate(dt, mappings);
    for (int i = 0; i < messages.Count; i++)
    {
        // save messages in PST format
        messages[i].Save(i + ".pst");
        inboxFolder.AddMessage(MapiMessage.FromMailMessage(messages[i]));
    }
    // save in PST format
    pst.SaveAs("output.pst", Email.Storage.Pst.FileFormat.Pst);
 
  • 关于 Aspose.Email for .NET API

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

    免费应用程序用于装配 PST

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

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

    PST What is PST File Format

    .PST 扩展名的文件代表 Outlook 个人存储文件(亦称个人存储表),用于存储各种用户信息。用户信息保存在不同类型的文件夹中,包括电子邮件、日历项目、便笺、联系人以及其他多种文件格式。PST 文件用于离线归档电子邮件数据,可在以后加载并在各种应用中查看。

    Read More

    其他支持的报告生成格式

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

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