Génération en masse de rapports au format PST via C#
Générer des messages électroniques en masse et les ajouter à un fichier PST via l’API .NET.
Comment générer des rapports basés sur PST avec C#
Pour créer des rapports PST, nous utiliserons
API, une API de génération de rapports riche en fonctionnalités, puissante et facile à utiliser pour la plateforme C#. Ouvrir
gestionnaire de paquets, recherchez Aspose.Email et installez-le. Vous pouvez également utiliser la commande suivante depuis la console du gestionnaire de paquets.
Commande de la console du gestionnaire de packages
PM> Install-Package Aspose.Email
Étapes pour assembler un PST via C#
- Créer un modèle à partir de MailMessage et ajouter des champs dynamiques
- Créer la source de données et le mappage
- Initialiser TemplateEngine en utilisant l’objet MailMessage
- Appeler la méthode TemplateEngine.Instantiate pour générer des messages en masse
- Créer un nouveau PST avec la méthode PersonalStorage.Create
- Ajouter un dossier dans le PST
- Ajouter des messages depuis TemplateEngine dans le dossier en utilisant la méthode FolderInfo.Add
- Enregistrer au format PST
Exigences système
Aspose.Email pour .NET est pris en charge sur tous les principaux systèmes d’exploitation. Assurez‑vous simplement que vous disposez des prérequis suivants.
- Microsoft Windows ou un OS compatible avec .NET Framework, .NET Core et les plates‑formes Xamarin
- Environnement de développement comme Microsoft Visual Studio
- Aspose.Email pour .NET référencé dans votre projet
Exemple de code C# pour la génération de rapports de messages 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);
À propos de l’API Aspose.Email pour .NET
Aspose.Email est une solution d’analyse des formats Microsoft Outlook et Thunderbird. Il est facile de créer, manipuler et convertir les formats d’e‑mail et de stockage tels que MSG, EMLX, EML et MHT. La gestion des pièces‑jointes, la personnalisation des en‑têtes de messages et la mise en œuvre de différents protocoles réseau comme POP3, IMAP et SMTP pour envoyer et recevoir des e‑mails sont grandement simplifiées. Il s’agit d’une API autonome qui ne nécessite ni Microsoft Outlook ni aucune autre installation logicielle.Application gratuite pour assembler des PST
Consultez nos démonstrations en direct pour créer des fichiers PST avec les avantages suivants.
PST What is PST File Format
Les fichiers avec l’extension .PST représentent les fichiers de stockage personnel Outlook (également appelés Personal Storage Table) qui stockent une variété d'informations utilisateur. Les informations sont organisées en dossiers de différents types comprenant des e‑mails, des éléments de calendrier, des notes, des contacts et plusieurs autres formats de fichiers. Les fichiers PST sont utilisés pour l’archivage hors ligne des données de messagerie, pouvant être chargés et visualisés ultérieurement dans diverses applications.
Read More