Generación masiva de informes en formato PST a través de C#
Genere mensajes de correo electrónico de forma masiva y agréguelos al archivo PST a través de la API de.NET.
Cómo generar informes basados en PST usando C#
Para crear informes PST, utilizaremos
API que es una API de generación de informes rica en funciones, potente y fácil de usar para la plataforma C#. Abrir
administrador de paquetes, busque Aspose.Email e instalar. También puede usar el siguiente comando desde la consola del administrador de paquetes.
Comando de consola de Package Manager
PM> Install-Package Aspose.Email
Pasos para ensamblar PST a través de C#
- Cree una plantilla como MailMessage y añada campos dinámicos
- Crear fuente de datos y mapeo
- Inicialice TemplateEngine con el objeto MailMessage
- Llame al método TemplateEngine.instantiate para generar mensajes de forma masiva
- Cree un nuevo PST con el método PersonalStorage.create
- Agregar carpeta en PST
- Agregue mensajes de TemplateEngine a la carpeta mediante el método FolderInfo.add
- Guardar en formato PST
Requisitos del sistema
Aspose.Email para.NET es compatible con todos los principales sistemas operativos. Solo asegúrese de cumplir los siguientes requisitos previos.
- Microsoft Windows o un sistema operativo compatible con las plataformas .NET Framework, .NET Core y Xamarin
- Entorno de desarrollo como Microsoft Visual Studio
- Aspose.Email para.NET al que se hace referencia en su proyecto
Código de ejemplo en C# para la generación de informes de mensajes 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);
Acerca de Aspose.Email para.NET API
Aspose.Email es una solución de análisis de formatos de Microsoft Outlook y Thunderbird. Se pueden crear, manipular y convertir fácilmente formatos de correo electrónico y almacenamiento como MSG, EMLX, EML y MHT. El manejo de los archivos adjuntos de correo electrónico, la personalización de los encabezados de los mensajes y la implementación de diferentes protocolos de red como POP3, IMAP y SMTP para enviar y recibir correos electrónicos es mucho más fácil. Es una API independiente y no requiere la instalación de Microsoft Outlook ni de ningún otro software.Aplicación gratuita para ensamblar PST
Consulta nuestras demostraciones en vivo para crear archivos PST con las siguientes ventajas.
PST What is PST File Format
Los archivos con la extensión.PST representan los archivos de almacenamiento personal de Outlook (también denominados tabla de almacenamiento personal) que almacenan una variedad de información del usuario. La información del usuario se almacena en carpetas de diferentes tipos que incluyen correos electrónicos, elementos del calendario, notas, contactos y varios otros formatos de archivo. Los archivos PST se utilizan para archivar datos de correo electrónico sin conexión que luego se pueden cargar y ver en varias aplicaciones.
Read More