Generación masiva de informes en formato OST mediante C#
Generar mensajes de correo en masa y añadirlos a un archivo OST mediante la API .NET.
Cómo generar informes basados en OST usando C#
Para crear informes OST, utilizaremos
API que es rica en funciones, potente y fácil de usar para la generación de informes en la plataforma C#. Open
administrador de paquetes, busque Aspose.Email e instale. También puede usar el siguiente comando desde la Consola del Administrador de Paquetes.
Comando de la consola del Administrador de paquetes
PM> Install-Package Aspose.Email
Pasos para ensamblar OST mediante C#
- Crear una plantilla como MailMessage y agregar campos dinámicos
- Crear fuente de datos y asignación
- Inicializar TemplateEngine usando el objeto MailMessage
- Llamar al método TemplateEngine.Instantiate para generar mensajes en masa
- Crear un nuevo PST con el método PersonalStorage.Create
- Agregar carpeta en PST
- Agregar mensajes desde TemplateEngine a la carpeta usando el método FolderInfo.Add
- Guardar en formato OST
Requisitos del sistema
Aspose.Email for .NET es compatible con todos los sistemas operativos principales. Solo asegúrese de tener los siguientes requisitos previos.
- Microsoft Windows o un sistema operativo compatible con .NET Framework, .NET Core y plataformas Xamarin
- Entorno de desarrollo como Microsoft Visual Studio
- Aspose.Email para .NET referenciado en su proyecto
Código de ejemplo en C# para la generación de informes de mensajes 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);
Acerca de la API Aspose.Email para .NET
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 y almacenamiento como MSG, EMLX, EML y MHT. El manejo de archivos adjuntos, la personalización de encabezados de 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 sencillo. Es una API independiente y no requiere Microsoft Outlook ni la instalación de ningún otro software.Aplicación gratuita para ensamblar OST
Consulte nuestras demostraciones en vivo para crear archivos OST con los siguientes beneficios.
OST What is OST File Format
Los archivos OST o de almacenamiento sin conexión representan los datos del buzón del usuario en modo offline en la máquina local tras registrarse en el servidor Exchange mediante Microsoft Outlook. Se crean automáticamente al primer uso de Microsoft Outlook cuando hay conectividad con el servidor. Una vez creado el archivo, los datos se sincronizan con el servidor de correo para que estén también disponibles offline en caso de desconexión del servidor. Los archivos OST pueden contener elementos del buzón como correos electrónicos, contactos, información del calendario, notas, tareas, etc. Los usuarios pueden crear correos y otros elementos en el archivo OST incluso sin conexión al servidor, pero estos no se sincronizarán con el servidor. Cuando se restablece la conexión, el archivo local se sincroniza nuevamente con el servidor, de modo que tanto el servidor como la copia local estén al mismo nivel de información.
Read More