HTML JPG PDF XML OST
Aspose.Email  para .NET
OST

Geração em Massa de Relatórios no Formato OST via C#

Gerar mensagens de e‑mail em lote e adicioná‑las ao arquivo OST via API .NET.

Como Gerar Relatórios Baseados em OST Usando C#

Para criar relatórios OST, usaremos

Aspose.Email para .NET

API rica em recursos, poderosa e fácil de usar para geração de relatórios na plataforma C#. Abra

NuGet

Gerenciador de pacotes, procure por Aspose.Email e instale. Você também pode usar o seguinte comando no Console do Gerenciador de Pacotes.

Comando do Console do Gerenciador de Pacotes


PM> Install-Package Aspose.Email

Etapas para Montar OST via C#

  1. Criar um modelo como MailMessage e adicionar campos dinâmicos
  2. Criar fonte de dados e mapeamento
  3. Inicializar o TemplateEngine usando o objeto MailMessage
  4. Chamar o método TemplateEngine.Instantiate para gerar mensagens em lote
  5. Criar um novo PST com o método PersonalStorage.Create
  6. Adicionar pasta no PST
  7. Adicionar mensagens do TemplateEngine à pasta usando o método FolderInfo.Add
  8. Salvar no formato OST

Requisitos do Sistema

Aspose.Email para .NET é suportado em todos os principais sistemas operacionais. Apenas certifique-se de que você tem os pré-requisitos a seguir.

  • Microsoft Windows ou um SO compatível com .NET Framework, .NET Core e plataformas Xamarin
  • Ambiente de desenvolvimento como o Microsoft Visual Studio
  • Aspose.Email para .NET referenciado em seu projeto
 

Código de exemplo C# para geração de relatórios de mensagens OST


    // 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 OST format
        messages[i].Save(i + ".ost");
        inboxFolder.AddMessage(MapiMessage.FromMailMessage(messages[i]));
    }
    // save in OST format
    pst.SaveAs("output.ost", Email.Storage.Pst.FileFormat.Ost);
 
  • Sobre a API Aspose.Email para .NET

    Aspose.Email é uma solução de análise de formatos do Microsoft Outlook e Thunderbird. É possível criar, manipular e converter formatos de e‑mail e armazenamento como MSG, EMLX, EML e MHT com facilidade. O manuseio de anexos de e‑mail, a personalização de cabeçalhos de mensagens e a implementação de diferentes protocolos de rede como POP3, IMAP e SMTP para enviar e receber e‑mails fica muito mais simples. É uma API autônoma e não requer a instalação do Microsoft Outlook ou de qualquer outro software.

    Aplicativo Gratuito para Montar OST

    Confira nossas demonstrações ao vivo para criar arquivos OST com os seguintes benefícios.

      Não é necessário baixar ou configurar nada
      Não é necessário escrever ou compilar código
      Basta fazer upload do arquivo OST e pressionar o "Assemble" button
      Baixe o arquivo OST resultante a partir do link

    OST What is OST File Format

    OST ou Arquivos de Armazenamento Offline representam os dados da caixa de correio do usuário em modo offline na máquina local após o registro no Exchange Server usando o Microsoft Outlook. Eles são criados automaticamente na primeira utilização do Outlook ao conectar-se ao servidor. Quando o arquivo é criado, os dados são sincronizados com o servidor de e‑mail, ficando também disponíveis offline caso haja desconexão do servidor. Arquivos OST podem conter itens da caixa de correio, como e‑mails, contatos, informações de calendário, notas, tarefas e outros dados semelhantes. Os usuários podem criar e‑mails e outros itens no arquivo OST mesmo sem conexão ao servidor, mas esses itens não são sincronizados até que a conexão seja restabelecida. Quando a conexão é estabelecida, o arquivo local é novamente sincronizado com o servidor, de modo que tanto o servidor quanto a cópia local estejam com as mesmas informações.

    Read More

    Outros Formatos Suportados de Geração de Relatórios

    Usando C#, é fácil gerar relatórios em múltiplos formatos, incluindo.

    EML (Mensagens de e‑mail do Outlook)
    MBOX (Mensagens de correio eletrônico)
    MSG (Formato Outlook & Exchange)
    PST (Arquivos de armazenamento pessoal do Outlook)