public event ExtendedAsyncCompletedEventHandler<TResult> GetFolderInfoCompleted
Get information of an existing mailboxes asynchronously (Task-based asynchronous approach).
using System; using ComponentPro; using ComponentPro.Net.Mail; ... // Create a new instance of the Imap class. Imap client = new Imap(); // Connect to the server. client.Connect("myserver"); // Or you can specify the IMAP port with // client.Connect("myserver", 143); // Login to the server. client.Authenticate("user", "password"); // ... // Obtain information about the 'INBOX' mailbox. Folder folder = await client.GetFolderInfoAsync("INBOX"); // ... Console.WriteLine("The number of recent messages: " + folder.RecentMessages); Console.WriteLine("The number of new unseen messages messages: " + folder.NewUnseenMessages); // ... // Disconnect. client.Disconnect();
Get information of an existing mailboxes asynchronously (Event-based asynchronous approach)
using System; using System.ComponentModel; using ComponentPro; using ComponentPro.Net.Mail; ... public void DoGetMailboxAsync() { // Create a new instance of the Imap class. Imap client = new Imap(); // Connect to the server. client.Connect("myserver"); // Or you can specify the IMAP port with // client.Connect("myserver", 143); // Login to the server. client.Authenticate("user", "password"); // ... // Register an event handler. client.GetFolderInfoCompleted += client_GetMailboxInfoCompleted; // Obtain information about the 'INBOX' mailbox. client.GetFolderInfoAsync("INBOX"); // ... // Disconnect. client.Disconnect(); } void client_GetMailboxInfoCompleted(object sender, ExtendedAsyncCompletedEventArgs<Folder> e) { if (e.Error != null) { Console.WriteLine("Error: " + e.Error.ToString()); } else { Console.WriteLine("The number of recent messages: " + e.Result.RecentMessages); Console.WriteLine("The number of new unseen messages messages: " + e.Result.NewUnseenMessages); } }