การสำรองและกู้คืนข้อมูล IMAP

การสำรองและกู้คืนแบบมาตรฐาน

Aspose.Email สำหรับ .NET ให้ความสามารถในการสำรองและกู้คืนข้อความ สำหรับเรื่องนี้ API มีเมธอดต่อไปนี้

บทความนี้สาธิตวิธีการสำรองและกู้คืนข้อความโดยใช้ ImapClient คลาส.

สำรองข้อความ

เพื่อสำรองข้อความ ให้ใช้ ImapClient.Backup วิธีการตามที่แสดงในโค้ดตัวอย่างต่อไปนี้

// 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);

กู้คืนข้อความ

เพื่อกู้คืนข้อความ ใช้ ImapClient.Restore วิธีการตามที่แสดงในโค้ดตัวอย่างต่อไปนี้

// 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);

การสำรองและกู้คืน IMAP ด้วย MultiConnection

เมื่อทำงานกับข้อความจำนวนมาก การสำรอง/กู้คืนข้อมูลอาจใช้เวลานาน สำหรับกรณีนี้ API ให้การสนับสนุนการเชื่อมต่อหลายครั้งระหว่างการสำรองและการกู้คืน เพื่อเปิดใช้งานโหมด MultiConnection ให้ตั้งค่า ImapClient.UseMultiConnection คุณสมบัติสำหรับ MultiConnectionMode.Enable. โค้ดตัวอย่างต่อไปนี้สาธิตการสำรองและกู้คืนข้อมูลโดยเปิดใช้งานโหมด MultiConnection

ตัวอย่างโค้ดต่อไปนี้แสดง การสำรองข้อมูล โดยเปิดโหมด MultiConnection

// 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);

ตัวอย่างโค้ดต่อไปนี้แสดง การกู้คืน โดยเปิดโหมด MultiConnection

// 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);