Click or drag to resize
MimeKit

UniqueId Structure

A unique identifier.
Inheritance Hierarchy
SystemObject
  SystemValueType
    MailKitUniqueId

Namespace: MailKit
Assembly: MailKit (in MailKit.dll) Version: 4.10.0
Syntax
C#
public readonly struct UniqueId : IComparable<UniqueId>, 
	IEquatable<UniqueId>

The UniqueId type exposes the following members.

Constructors
 NameDescription
Public methodUniqueId(UInt32) Initializes a new instance of the UniqueId struct.
Public methodUniqueId(UInt32, UInt32) Initializes a new instance of the UniqueId struct.
Top
Properties
 NameDescription
Public propertyId Gets the identifier.
Public propertyIsValid Gets whether or not the unique identifier is valid.
Public propertyValidity Gets the validity, if non-zero.
Top
Methods
 NameDescription
Public methodCompareTo Compares two UniqueId objects.
Public methodEquals(Object) Determines whether the specified Object is equal to the current UniqueId.
(Overrides ValueTypeEquals(Object))
Public methodEquals(UniqueId) Determines whether the specified UniqueId is equal to the current UniqueId.
Public methodGetHashCode Serves as a hash function for a UniqueId object.
(Overrides ValueTypeGetHashCode)
Public methodGetType
(Inherited from Object)
Public methodStatic memberParse(String) Parse a unique identifier.
Public methodStatic memberParse(String, UInt32) Parse a unique identifier.
Public methodToString Returns a String that represents the current UniqueId.
(Overrides ValueTypeToString)
Public methodStatic memberTryParse(String, UniqueId) Attempt to parse a unique identifier.
Public methodStatic memberTryParse(String, UInt32, UniqueId) Attempt to parse a unique identifier.
Top
Operators
 NameDescription
Public operatorStatic memberEquality(UniqueId, UniqueId) Determines whether two unique identifiers are equal.
Public operatorStatic memberGreaterThan(UniqueId, UniqueId) Determines whether one unique identifier is greater than another unique identifier.
Public operatorStatic memberGreaterThanOrEqual(UniqueId, UniqueId) Determines whether one unique identifier is greater than or equal to another unique identifier.
Public operatorStatic memberInequality(UniqueId, UniqueId) Determines whether two unique identifiers are not equal.
Public operatorStatic memberLessThan(UniqueId, UniqueId) Determines whether one unique identifier is less than another unique identifier.
Public operatorStatic memberLessThanOrEqual(UniqueId, UniqueId) Determines whether one unique identifier is less than or equal to another unique identifier.
Top
Fields
 NameDescription
Public fieldStatic memberInvalid The invalid UniqueId value.
Public fieldStatic memberMaxValue The maximum UniqueId value.
Public fieldStatic memberMinValue The minimum UniqueId value.
Top
Remarks

Represents a unique identifier for messages in a IMailFolder.

A 32-bit value assigned to each message, which when used with the unique identifier validity value (see below) forms a 64-bit value that MUST NOT refer to any other message in the mailbox or any subsequent mailbox with the same name forever.Unique identifiers are assigned in a strictly ascending fashion in the mailbox; as each message is added to the mailbox it is assigned a higher UID than the message(s) which were added previously. Unlike message sequence numbers, unique identifiers are not necessarily contiguous.

The unique identifier of a message MUST NOT change during the session, and SHOULD NOT change between sessions. Any change of unique identifiers between sessions MUST be detectable using the UIDVALIDITY mechanism discussed below. Persistent unique identifiers are required for a client to resynchronize its state from a previous session with the server (e.g., disconnected or offline access clients); this is discussed further in [IMAP-DISC].

Note  Note
For more information about unique identifiers, see RFC 3501, section 2.3.1.1.
See Also