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
API rica em recursos, poderosa e fácil de usar para geração de relatórios na plataforma C#. Abra
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#
- Criar um modelo como MailMessage e adicionar campos dinâmicos
- Criar fonte de dados e mapeamento
- Inicializar o TemplateEngine usando o objeto MailMessage
- Chamar o método TemplateEngine.Instantiate para gerar mensagens em lote
- Criar um novo PST com o método PersonalStorage.Create
- Adicionar pasta no PST
- Adicionar mensagens do TemplateEngine à pasta usando o método FolderInfo.Add
- 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.
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