Click or drag to resize
MimeKit

ImapClientDisconnectAsync Method

Asynchronously disconnect the service.

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

Parameters

quit
Type: SystemBoolean
If set to true, a LOGOUT command will be issued in order to disconnect cleanly.
cancellationToken (Optional)
Type: System.ThreadingCancellationToken
The cancellation token.

Return Value

Type: 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.
Examples
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