Working with MapiNote in PST

Adding MapiNote to PST

The Create a New PST File and Add Subfolders article shows how to create a PST file and add a subfolder to it. With Aspose.Email you can add a MapiNote to the Notes subfolder of a PST file that you have created or loaded. To add a MapiNote to a PST:

  1. Create a template MapiNote using Microsoft Outlook and save it as an MSG file.
  2. Load the saved MSG note into a MapiMessage object.
  3. Create a MapiNote object and load the template MSG note.
  4. Set the MapiNote properties.
  5. Create a PST using the PersonalStorage.Create() method.
  6. Create a pre-defined folder (Notes) at the root of the PST file by accessing the root folder and then calling the AddMapiMessageItem() method.

The following code snippet shows you how to create a MapiNote and then add it to the notes folder of a newly created PST file.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_Outlook();
MapiMessage mess = MapiMessage.FromFile(dataDir + "Note.msg");
// Create three Notes
MapiNote note1 = (MapiNote)mess.ToMapiMessageItem();
note1.Subject = "Yellow color note";
note1.Body = "This is a yellow color note";
MapiNote note2 = (MapiNote)mess.ToMapiMessageItem();
note2.Subject = "Pink color note";
note2.Body = "This is a pink color note";
note2.Color = NoteColor.Pink;
MapiNote note3 = (MapiNote)mess.ToMapiMessageItem();
note2.Subject = "Blue color note";
note2.Body = "This is a blue color note";
note2.Color = NoteColor.Blue;
note3.Height = 500;
note3.Width = 500;
string path = dataDir + "AddMapiNoteToPST_out.pst";
if (File.Exists(path))
{
File.Delete(path);
}
using (PersonalStorage personalStorage = PersonalStorage.Create(dataDir + "AddMapiNoteToPST_out.pst", FileFormatVersion.Unicode))
{
FolderInfo notesFolder = personalStorage.CreatePredefinedFolder("Notes", StandardIpmFolder.Notes);
notesFolder.AddMapiMessageItem(note1);
notesFolder.AddMapiMessageItem(note2);
notesFolder.AddMapiMessageItem(note3);
}