Geração de relatórios em massa no formato PST via C#
Gere mensagens de e-mail em massa e adicione ao arquivo PST via API .NET.
Como gerar relatórios baseados em PST usando C#
Para criar relatórios PST, usaremos
API que é uma API de geração de relatórios rica em recursos, poderosa e fácil de usar para a plataforma C#. Abrir
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 o PST via C #
- Crie um modelo como MailMessage e adicione campos dinâmicos
- Criar fonte de dados e mapeamento
- Inicializar TemplateEngine usando o objeto MailMessage
- Chame o método TemplateEngine.Instantiate para gerar mensagens em massa
- Crie 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 PST
Requisitos de sistema
Aspose.Email para .NET é compatível com todos os principais sistemas operacionais. Apenas certifique-se de ter os seguintes pré-requisitos.
- Microsoft Windows ou um sistema operacional compatível com plataformas .NET Framework, .NET Core e 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ório de mensagem PST
// 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);
Sobre Aspose.Email para API .NET
Aspose.Email é uma solução de análise de formatos do Microsoft Outlook e Thunderbird. Pode-se facilmente criar, manipular, converter e-mail e formatos de armazenamento, como MSG, EMLX, EML e MHT. O manuseio de anexos de e-mail, personalização de cabeçalhos de mensagens e implementação de diferentes protocolos de rede como POP3, IMAP e SMTP para enviar e receber e-mails é muito mais fácil. É uma API independente e não requer o Microsoft Outlook ou qualquer outra instalação de software.Aplicativo Gratuito para Montar PST
Confira nossas demonstrações ao vivo para criar arquivos PST com os seguintes benefícios.
PST What is PST File Format
Arquivos com extensão .PST representam arquivos de armazenamento pessoal do Outlook (também chamados de tabela de armazenamento pessoal) que armazenam várias informações do usuário. As informações do usuário são armazenadas em pastas de diferentes tipos que incluem e-mails, itens de calendário, notas, contatos e vários outros formatos de arquivo. Os arquivos PST são usados para arquivar dados de e-mail offline que podem ser carregados e visualizados posteriormente em vários aplicativos.
Read More