Generació massiva d’informes en format PST amb C#
Genera missatges de correu en massa i afegeix-los a un fitxer PST mitjançant l’API .NET.
Com generar informes basats en PST utilitzant C#
Per crear informes PST, utilitzarem
API que és rica en funcionalitats, potent i fàcil d’utilitzar per generar informes a la plataforma C#. Obre
Gestor de paquets, cerqueu Aspose.Email i instal·leu-lo. També podeu utilitzar la següent comanda des de la Consola del Gestor de Paquets.
Comanda de la consola del Gestor de paquets
PM> Install-Package Aspose.Email
Passos per crear PST amb C#
- Crea una plantilla com a MailMessage i afegeix camps dinàmics
- Crea la font de dades i el mapatge
- Inicialitza TemplateEngine utilitzant l’objecte MailMessage
- Crida el mètode TemplateEngine.Instantiate per generar missatges en massa
- Crea un nou PST amb el mètode PersonalStorage.Create
- Afegeix una carpeta al PST
- Afegeix missatges des de TemplateEngine a la carpeta utilitzant el mètode FolderInfo.Add
- Desa en format PST
Requisits del sistema
Aspose.Email per a .NET és compatible amb tots els principals sistemes operatius. Assegura’t només de tenir els següents requisits previs.
- Microsoft Windows o un sistema operatiu compatible amb .NET Framework, .NET Core i plataformes Xamarin
- Entorn de desenvolupament com Microsoft Visual Studio
- Aspose.Email per .NET referenciat al vostre projecte
Codi d'exemple C# per a la generació d'informes de missatges 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 l'API Aspose.Email per a .NET
Aspose.Email és una solució d’anàlisi de formats de Microsoft Outlook i Thunderbird. Es pot crear, manipular i convertir fàcilment formats de correu i d’emmagatzematge com ara MSG, EMLX, EML i MHT. La gestió d’adjunts de correu, la personalització de capçaleres de missatge i la implementació de diferents protocols de xarxa com POP3, IMAP i SMTP per enviar i rebre correus és molt més senzilla. És una API independent i no requereix la instal·lació de Microsoft Outlook ni cap altre programari.Aplicació gratuïta per a l’assemblatge de PST
Consulta les nostres demos en viu per a crear fitxers PST amb els següents avantatges.
PST What is PST File Format
Els fitxers amb extensió .PST representen els Fitxers d'emmagatzematge personal d'Outlook (també anomenats Personal Storage Table) que emmagatzemen una varietat d'informació de l'usuari. La informació de l'usuari es guarda en carpetes de diferents tipus que inclouen correus electrònics, elements de calendari, notes, contactes i diversos altres formats de fitxer. Els fitxers PST s'utilitzen per arxivar dades de correu electrònic fora de línia i poden ser carregats i visualitzats posteriorment en diverses aplicacions.
Read More