Imap |
public override Task<Stream> GetStreamAsync( UniqueId uid, string section, int offset, int count, CancellationToken cancellationToken = default, ITransferProgress progress = null )
Exception | Condition |
---|---|
ArgumentException | uid is invalid. |
ArgumentNullException | section is null. |
ArgumentOutOfRangeException | offset is negative. -or- count is negative. |
ObjectDisposedException | The ImapClient has been disposed. |
ServiceNotConnectedException | The ImapClient is not connected. |
ServiceNotAuthenticatedException | The ImapClient is not authenticated. |
FolderNotOpenException | The ImapFolder is not currently open. |
MessageNotFoundException | The IMAP server did not return the requested message stream. |
OperationCanceledException | The operation was canceled via the cancellation token. |
IOException | An I/O error occurred. |
ImapProtocolException | The server's response contained unexpected tokens. |
ImapCommandException | The server replied with a NO or BAD response. |
Gets a substream of the specified message. If the starting offset is beyond the end of the specified section of the message, an empty stream is returned. If the number of bytes desired extends beyond the end of the section, a truncated stream will be returned.
For more information about how to construct the section, see Section 6.4.5 of RFC3501.