Click or drag to resize
MimeKit

ImapClientDisconnectAsync Method

Asynchronously disconnect the service.

Namespace: MailKit.Net.Imap
Assembly: MailKit (in MailKit.dll) Version: 4.7.1
Syntax
C#
public override Task DisconnectAsync(
	bool quit,
	CancellationToken cancellationToken = default
)

Parameters

quit  Boolean
If set to true, a LOGOUT command will be issued in order to disconnect cleanly.
cancellationToken  CancellationToken  (Optional)
The cancellation token.

Return Value

Task
An asynchronous task context.

Implements

IMailServiceDisconnectAsync(Boolean, CancellationToken)
IMailServiceDisconnectAsync(Boolean, CancellationToken)
Exceptions
ExceptionCondition
ObjectDisposedException The ImapClient has been disposed.
Remarks
If quit is true, a LOGOUT command will be issued in order to disconnect cleanly.
Example
C#
public static void DownloadMessages ()
{
    using (var client = new ImapClient ()) {
        client.Connect ("imap.gmail.com", 993, SecureSocketOptions.SslOnConnect);

        client.Authenticate ("username", "password");

        client.Inbox.Open (FolderAccess.ReadOnly);

        var uids = client.Inbox.Search (SearchQuery.All);

        foreach (var uid in uids) {
            var message = client.Inbox.GetMessage (uid);

            // write the message to a file
            message.WriteTo (string.Format ("{0}.eml", uid));
        }

        client.Disconnect (true);
    }
}
See Also