Operazione di backup e ripristino IMAP
Backup e ripristino standard
Aspose.Email per .NET fornisce la possibilità di eseguire backup e ripristino dei messaggi. Per questo, l’API fornisce i seguenti metodi.
Questo articolo dimostra come eseguire il backup e il ripristino dei messaggi utilizzando il ImapClient classe.
Esegui il backup dei messaggi
Per eseguire il backup dei messaggi, utilizzare il ImapClient.Backup metodo come mostrato nel seguente frammento di codice.
// The path to the File directory.
string dataDir = RunExamples.GetDataDir_IMAP();
// Create an instance of the ImapClient class
ImapClient imapClient = new ImapClient();
// Specify host, username and password, and set port for your client
imapClient.Host = "imap.gmail.com";
imapClient.Username = "your.username@gmail.com";
imapClient.Password = "your.password";
imapClient.Port = 993;
imapClient.SecurityOptions = SecurityOptions.Auto;
ImapMailboxInfo mailboxInfo = imapClient.MailboxInfo;
ImapFolderInfo info = imapClient.GetFolderInfo(mailboxInfo.Inbox.Name);
ImapFolderInfoCollection infos = new ImapFolderInfoCollection();
infos.Add(info);
imapClient.Backup(infos, dataDir + @"\ImapBackup.pst", BackupOptions.Recursive);
Ripristina i messaggi
Per ripristinare i messaggi, usa il ImapClient.Restore metodo come mostrato nel seguente frammento di codice.
// The path to the File directory.
string dataDir = RunExamples.GetDataDir_IMAP();
// Create an instance of the ImapClient class
ImapClient imapClient = new ImapClient();
// Specify host, username and password, and set port for your client
imapClient.Host = "imap.gmail.com";
imapClient.Username = "your.username@gmail.com";
imapClient.Password = "your.password";
imapClient.Port = 993;
imapClient.SecurityOptions = SecurityOptions.Auto;
RestoreSettings settings = new RestoreSettings();
settings.Recursive = true;
PersonalStorage pst = PersonalStorage.FromFile(dataDir + @"\ImapBackup.pst");
imapClient.Restore(pst, settings);
Backup e ripristino IMAP con MultiConnection
Quando si lavora con un gran numero di messaggi, l’operazione di backup/ripristino può richiedere molto tempo. Per questo, l’API fornisce il supporto a più connessioni durante le operazioni di backup e ripristino. Per abilitare la modalità MultiConnection, impostare ImapClient.UseMultiConnection proprietà per MultiConnectionMode.Enable. I seguenti frammenti di codice mostrano le operazioni di backup e ripristino con la modalità MultiConnection abilitata.
I seguenti frammenti di codice dimostrano l’operazione di backup con la modalità MultiConnection abilitata.
// The path to the File directory.
string dataDir = RunExamples.GetDataDir_IMAP();
// Create an instance of the ImapClient class
ImapClient imapClient = new ImapClient();
// Specify host, username and password, and set port for your client
imapClient.Host = "imap.gmail.com";
imapClient.Username = "your.username@gmail.com";
imapClient.Password = "your.password";
imapClient.Port = 993;
imapClient.SecurityOptions = SecurityOptions.Auto;
imapClient.UseMultiConnection = MultiConnectionMode.Enable;
ImapMailboxInfo mailboxInfo = imapClient.MailboxInfo;
ImapFolderInfo info = imapClient.GetFolderInfo(mailboxInfo.Inbox.Name);
ImapFolderInfoCollection infos = new ImapFolderInfoCollection();
infos.Add(info);
imapClient.Backup(infos, dataDir + @"\ImapBackup.pst", BackupOptions.Recursive);
I seguenti frammenti di codice dimostrano l’operazione di ripristino con la modalità MultiConnection abilitata.
// The path to the File directory.
string dataDir = RunExamples.GetDataDir_IMAP();
// Create an instance of the ImapClient class
ImapClient imapClient = new ImapClient();
// Specify host, username and password, and set port for your client
imapClient.Host = "imap.gmail.com";
imapClient.Username = "your.username@gmail.com";
imapClient.Password = "your.password";
imapClient.Port = 993;
imapClient.SecurityOptions = SecurityOptions.Auto;
imapClient.UseMultiConnection = MultiConnectionMode.Enable;
RestoreSettings settings = new RestoreSettings();
settings.Recursive = true;
PersonalStorage pst = PersonalStorage.FromFile(dataDir + @"\Outlook.pst");
imapClient.Restore(pst, settings);