TimeStampCollection Class |
Namespace: MailBee.Mime
The TimeStampCollection type exposes the following members.
Name | Description | |
---|---|---|
Clear | Removes all objects from the CollectionBase instance. This method cannot be overridden. (Inherited from CollectionBase.) | |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GetEnumerator | Returns an enumerator that iterates through the CollectionBase instance. (Inherited from CollectionBase.) | |
GetHashCode | Serves as the default hash function. (Inherited from Object.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
OnClear | Performs additional custom processes when clearing the contents of the CollectionBase instance. (Inherited from CollectionBase.) | |
OnClearComplete | Performs additional custom processes after clearing the contents of the CollectionBase instance. (Inherited from CollectionBase.) | |
OnInsert | Performs additional custom processes before inserting a new element into the CollectionBase instance. (Inherited from CollectionBase.) | |
OnInsertComplete | Performs additional custom processes after inserting a new element into the CollectionBase instance. (Inherited from CollectionBase.) | |
OnRemove | Performs additional custom processes when removing an element from the CollectionBase instance. (Inherited from CollectionBase.) | |
OnRemoveComplete | Performs additional custom processes after removing an element from the CollectionBase instance. (Inherited from CollectionBase.) | |
OnSet | Performs additional custom processes before setting a value in the CollectionBase instance. (Inherited from CollectionBase.) | |
OnSetComplete | Performs additional custom processes after setting a value in the CollectionBase instance. (Inherited from CollectionBase.) | |
OnValidate | Performs additional custom processes when validating a value. (Inherited from CollectionBase.) | |
RemoveAt | Removes the element at the specified index of the CollectionBase instance. This method is not overridable. (Inherited from CollectionBase.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) |
Name | Description | |
---|---|---|
Capacity | Gets or sets the number of elements that the CollectionBase can contain. (Inherited from CollectionBase.) | |
Count | Gets the number of elements contained in the CollectionBase instance. This property cannot be overridden. (Inherited from CollectionBase.) | |
InnerList | Gets an ArrayList containing the list of elements in the CollectionBase instance. (Inherited from CollectionBase.) | |
Item |
Gets the TimeStamp object at the specified zero-based index in the collection.
| |
List | Gets an IList containing the list of elements in the CollectionBase instance. (Inherited from CollectionBase.) |
When a mail message gets sent, it passes through one or more mail servers (gateways) during the delivery. Each mail server usually alters the message by adding a new Received header which contains the information about this server and time stamp of the moment when the message passed through this server. TimeStamp class represents the information extracted from a single Received header during parsing the message.
All TimeStamp objects are stored in TimeStampCollection which represents all Received headers of the message. You can access this collection using TimeStamps property.
The first TimeStamp object in the collection usually represents the moment when the message was received by the destination mail server. MailBee uses this TimeStamp object to obtain DateReceived value.
Note |
---|
Some mail servers do not add Received headers. Thus, no time stamps will be available to the application. In this case, the only way to obtain the date when the message was received is to get Envelope of the message using IMAP and get the date from DateReceived property. Also, even if Received header itself is available, some of its fields may be missing. |
Because TimeStampCollection object contains all the time stamps associated with the message, you can easily find out the full route of the message from its sender to its recipient, determine if there had been any delays during the delivery, etc.
// To use the code below, import MailBee namespaces at the top of your code. using MailBee; using MailBee.Mime; // The actual code (put it into a method of your class). MailMessage msg = new MailMessage(); msg.LoadMessage(@"C:\Docs\TestMail.eml"); foreach (TimeStamp ts in msg.TimeStamps) { Console.WriteLine(ts.From); }