EmlRootPackage
Contents
[
Hide
]
EmlRootPackage class
Represents the root package allowing working with metadata in an EML email message.
public class EmlRootPackage : EmailRootPackage
Properties
| Name | Description |
|---|---|
| Count { get; } | Gets the number of metadata properties. |
| EmailPackage { get; } | Gets the EML metadata package. (2 properties) |
| FileType { get; } | Gets the file type metadata package. |
| Item { get; } | Gets the MetadataProperty with the specified name. |
| Keys { get; } | Gets a collection of the metadata property names. |
| MetadataType { get; } | Gets the metadata type. |
| PropertyDescriptors { get; } | Gets a collection of descriptors that contain information about properties accessible through the GroupDocs.Metadata search engine. |
Methods
| Name | Description |
|---|---|
| virtual AddProperties(Func<MetadataProperty, bool>, PropertyValue) | Adds known metadata properties satisfying the specified predicate. The operation is recursive so it affects all nested packages as well. |
| ClearAttachments() | Removes all the attachments form the email message. |
| Contains(string) | Determines whether the package contains a metadata property with the specified name. |
| virtual FindProperties(Func<MetadataProperty, bool>) | Finds the metadata properties satisfying the specified predicate. The search is recursive so it affects all nested packages as well. |
| GetEnumerator() | Returns an enumerator that iterates through the collection. |
| virtual RemoveProperties(Func<MetadataProperty, bool>) | Removes metadata properties satisfying the specified predicate. |
| override Sanitize() | Removes writable metadata properties from the package. The operation is recursive so it affects all nested packages as well. |
| virtual SetProperties(Func<MetadataProperty, bool>, PropertyValue) | Sets known metadata properties satisfying the specified predicate. The operation is recursive so it affects all nested packages as well. This method is a combination of AddProperties and UpdateProperties. If an existing property satisfies the predicate its value is updated. If there is a known property missing in the package that satisfies the predicate it is added to the package. |
| virtual UpdateProperties(Func<MetadataProperty, bool>, PropertyValue) | Updates known metadata properties satisfying the specified predicate. The operation is recursive so it affects all nested packages as well. |
Remarks
Learn more
Examples
This code sample shows how to extract metadata from an EML message.
using (Metadata metadata = new Metadata(Constants.InputEml))
{
var root = metadata.GetRootPackage<EmlRootPackage>();
Console.WriteLine(root.EmailPackage.Sender);
Console.WriteLine(root.EmailPackage.Subject);
foreach (string recipient in root.EmailPackage.Recipients)
{
Console.WriteLine(recipient);
}
foreach (var attachedFileName in root.EmailPackage.AttachedFileNames)
{
Console.WriteLine(attachedFileName);
}
foreach (var header in root.EmailPackage.Headers)
{
Console.WriteLine("{0} = {1}", header.Name, header.Value);
}
// ...
}
See Also
- class EmailRootPackage
- namespace GroupDocs.Metadata.Formats.Email
- assembly GroupDocs.Metadata