Aspose.Email for .NET 新功能
Aspose.Email for .NET 25.8
-
该
X500Address属性的 MailAddress 类提供对 Exchange(X.500)格式电子邮件地址的访问(如果可用)。 -
该
Aspose.Email.Clients.Graph.ODataQueryBuilder类简化了为 Microsoft Graph 构建 OData 查询参数的过程。此增强功能在处理 Graph 数据时支持高级过滤、排序、选择和分页。 -
该
Aspose.Email.Clients.Graph.IGraphClientAsync接口使 GraphClient 支持异步操作,以提升性能和响应速度。
Aspose.Email for .NET 25.7
- 从 HTML 正文中提取外部链接的图像资源并直接嵌入到 HTML 输出中。保存或处理邮件时,包含链接内容的电子邮件的原始外观得以保留。该 HtmlSaveOptions.ExtractHTMLBodyResourcesAsAttachments - 当设置为 true 时 - 从 HTML 正文中提取链接的图像和其他资源,并将其作为附件嵌入,以保持消息的视觉完整性。
Aspose.Email for .NET 25.6
-
枚举在 PST 文件中被删除两次的消息 (软删除)。该 PersonalStorage.FindAndEnumerateSoftDeletedItems() 方法返回一个可枚举的集合 RestoredItemEntry 对象,每个包含已删除的 MapiMessage 以及其相应的 FolderId。
-
使用重载的方式以 分页方式 从 PST 文件检索文件夹内容 FolderInfo.GetContents(MailQuery query, int startIndex, int count) 方法检索符合指定查询的部分消息,从给定索引开始,受计数限制。
Aspose.Email for .NET 25.4
-
多个类已更新为 异步方法,以提升现代应用的可伸缩性和性能。它们改进了对 TGZ、PST、MBOX 和 VCard 文件的操作。
-
该 MapiContact.FromVCard 方法现已重载并接受一个 VCardLoadOptions 参数而不是编码。
Aspose.Email for .NET 25.3
-
在 TNEF 格式(常用于 Outlook 消息 winmail.dat)中保存和加载附件。使用以下方法:
- static MapiAttachment MapiAttachment.LoadFromTnef(string fileName) – 从 TNEF 文件中加载附件。
- static MapiAttachment MapiAttachment.LoadFromTnef(Stream stream) – 从 TNEF 流中加载附件。
- void MapiAttachment.SaveToTnef(string filename) – 将附件保存到 TNEF 文件中。
- void MapiAttachment.SaveToTnef(Stream stream) – 将附件保存到 TNEF 流中。
-
设置 MapiCalendar 对象,使用 void 显式覆盖其默认行为 MapiCalendar.SetStateForced(MapiCalendarState state) 方法。
Aspose.Email for .NET 25.2
-
使用查询过滤或搜索 MBOX 文件中的消息,仅检索符合特定条件的消息。在处理大型 MBOX 文件时提升性能和可用性。
-
使用分页检索以较小批次获取消息。此功能有助于降低内存消耗并提升处理大型 MBOX 文件时的性能。
Aspose.Email for .NET 25.1
- 使用以下方式扩展处理 Gmail 消息的能力: IGmailClient 接口。开发者现在可以编程方式列出、获取、发送、追加和删除电子邮件,以及管理 Gmail 过滤器。
Aspose.Email for .NET 24.12
- 通过新的 自定义 MIME 边界字符串 EmlSaveOptions.BoundariesTemplate 属性。此功能提供对边界格式的更大控制——模板中的 {#} 占位符会自动替换为边界编号,从而实现动态和个性化的边界字符串生成。
Aspose.Email for .NET 24.11
-
通过以下新成员改进引用附件的处理:
- 重载 MapiAttachmentCollection.Add 方法 - 使用指定的名称和配置选项将引用附件添加到集合中。
- ReferenceAttachmentOptions 类 - 通过配置向 MAPI 消息添加附件的选项来定义引用附件属性。
- IsReference 属性 - 标识消息中的引用附件。
-
使用新的重载方法增强消息搜索和检索,位于 FolderInfo 类:
- IEnumerable
EnumerateMessages(MailQuery mailQuery) - 使用 MailQuery. - IEnumerable
EnumerateMessages(MessageKind kind) - 按类型(MessageKind)检索消息。 - IEnumerable
EnumerateMessages(int startIndex, int count) - 使用起始索引和计数进行消息检索分页。
- IEnumerable
-
使用以下方式自定义 SendGrid 客户端的基础 URL: SendGridRegion 枚举及其相关属性在 SendGridClientOptions 类。
-
使用以下方式启用到 GCC High O365 端点的安全连接: EndPoint 属性的 GraphClient 类。
Aspose.Email for .NET 24.10
- 访问 MSG 文件中的用户反应。新的 GetReactions 方法,已添加到 FollowUpManager 类,允许您 检索 MAPI 消息的反应列表,便于分析用户参与度。
Aspose.Email for .NET 24.9
-
添加自定义 header 当创建实例时 IEWSClient。此功能在需要在客户端初始化期间使用特定 header 的场景中特别有用,例如
X-AnchorMailboxEWS 中的 header。 -
从 PST 文件中检索类别颜色。获取类别列表以及其名称和分配的颜色,在处理 Outlook 数据时更容易保持视觉一致性并改进数据组织。
Aspose.Email for .NET 24.6
-
使用以下方法访问、管理并与 Microsoft Graph 中用户的任务和任务列表进行交互: IGraphClient 接口:
- ListTaskLists() - 检索任务列表信息的集合。
- GetTaskList(string id) - 根据提供的 ID 检索特定任务列表。
- DeleteTaskList(string id) - 删除指定的任务列表。
- ListTasks(string id - 检索与指定任务列表 ID 关联的一组任务。
- FetchTask(string id) - 根据提供的 ID 检索特定任务。
- CreateTask(MapiTask task, string taskListUri) - 在指定的任务列表中创建新任务。
- UpdateTask(MapiTask task) - 使用提供的信息更新现有任务。
- UpdateTask(MapiTask task, UpdateSettings updateSettings) - 使用指定的更新设置更新现有任务。
-
您可以在需要时取消正在进行的 MBOX 拆分操作,而无需重新启动整个工作流。开发人员现在可以使用
CancellationToken(在 .NET Framework 4.5 和 .NET Core 中)或新的 Cancel() 方法(适用于较早的 .NET 版本)以安全中断长时间运行的拆分过程。
Aspose.Email for .NET 24.5
-
提取收件人 从存储在 PST 文件中的消息中。
- 通过指定邮件条目 ID。
- 通过遍历收件箱文件夹中的所有邮件,并从每封邮件中提取收件人。
此功能在以下版本中可用: PersonalStorage 类。
-
恢复本地 PST 和 OST 文件中软删除的项目
-
将多联系人 VCF 文件转换为分发列表。
Aspose.Email for .NET 24.3
- 在 MS Graph 中支持联系人和日历 - IGraphClient 接口方法允许您访问、管理和交互用户的联系人和日历事件:
- 检索一组 MAPI 联系人。
- 检索特定联系人。
- 创建新联系人。
- 更新现有联系人。
- 检索一组日历信息。
- 检索一组日历项目。
- 检索特定的日历项目。
- 创建新的日历项目。
- 更新现有的日历项目。
Aspose.Email for .NET 24.2
-
操作 Outlook 项目类别 - Aspose.Email 使检索和使用存储在 OLM 文件中的 Outlook 项目类别的颜色成为可能。
-
容器类匹配 - 一个新的 EnforceContainerClassMatching 已向 FolderCreationOptions 该类在向 PST 文件添加文件夹时,可确保文件夹的类与 PST 文件中预期的文件夹类型或类别匹配。
Aspose.Email for .NET 23.12
- 在将电子邮件保存为 HTML 时设置资源相对路径 - Aspose.Email 引入了在导出消息为 HTML 格式时使用相对路径保存电子邮件资源的功能,提供了更灵活的资源链接。用户可以在绝对路径和相对路径之间选择,并使用以下方式定义自定义路径: ResourceHtmlRendering 事件,简化了电子邮件在不同系统之间的共享和展示。
Aspose.Email for .NET 23.11
-
验证电子邮件 - 添加了一组组件,使用户能够验证消息文件,支持 eml、emlx、mht、msg 和 oft 等格式。利用此功能,用户可以验证消息并获取验证过程的见解,包括格式类型和遇到的错误。
-
为电子邮件附加数字签名 - 在 AttachSignature 方法中 SecureEmailManager 此类旨在轻松为电子邮件添加数字签名。
签名附加后,用户可以通过 ‘IsSigned’、‘MessageClass’ 等属性以及附件详情来验证结果。
要自定义签名附件过程,用户可以使用 SignatureOptions 类。
Aspose.Email for .NET 23.10
-
将 Mbox 存储拆分为更小的部分 - 将大文件拆分为可管理的部分,并在过程中实现自定义操作:
- 为拆分的 Mbox 文件名指定自定义前缀。
- 自定义在电子邮件复制到新 Mbox 文件之前和之后的操作。
- 当创建新的 Mbox 文件时作出反应。
- 当新 Mbox 文件填充电子邮件时进行响应。
-
按 MediaType 获取 AlternateView 内容 - 从电子邮件中的特定 AlternateView 检索内容字符串。 MailMessage.GetAlternateViewContent(string mediaType) 此方法允许您访问与指定媒体类型匹配的 AlternateView 的内容。
Aspose.Email for .NET 23.8
-
通过 Graph 客户端发送电子邮件 - 为 GraphClient 类添加了接受 MailMessage 对象的重载方法,以发送电子邮件:
-
将 Mapi 分发列表保存为单个多联系人 VCF 文件 - 使用提供的保存选项将 Mapi 分发列表保存到指定的文件名。您可以将文件名和 MapiDistributionListSaveOptions 类的实例作为参数提供。
- void Save(string fileName, MapiDistributionListSaveOptions options) 已为此目的添加了方法。
Aspose.Email for .NET 23.7
- 从 PST 删除项目 - 我们添加了一个新方法, DeleteItem(string entryId),到 PersonalStorage 类。此方法提供了一种使用与项目关联的唯一 entryId 从个人存储表(PST)中删除项目(文件夹或消息)的方法。
- 事件处理和 PST 拆分 - 在以下方面改进了功能: PersonalStorage 类:
-
StorageProcessingEventHandler 该事件在存储处理之前触发,特别是在 MergeWith 或 SplitInto 方法中处理当前存储之前。此事件提供在存储处理之前执行自定义逻辑或处理特定操作的机会。
-
StorageProcessingEventArgs 类为 PersonalStorage.StorageProcessing 事件提供数据。
-
SplitInto(long chunkSize, string partFileNamePrefix, string path) 重载方法允许将 PST 存储拆分为更小的部分。
-
- 日历处理 - 在 CalendarReader 类中添加了新属性和方法:
- Count 属性允许检索日历中存在的 Vevent 组件(事件)的数量,从而更容易跟踪事件总数。
- IsMultiEvents 属性确定日历是否包含多个事件。
- Method 属性获取与日历对象关联的 iCalendar 方法类型。它返回方法类型,例如 “REQUEST”、 “PUBLISH” 或 “CANCEL”,提供有关日历目的的有价值信息。
- Version 获取 iCalendar 的版本。
- LoadAsMultiple() 此方法能够从包含多个事件的日历中加载事件列表。它返回 Appointment 对象的列表,方便单独访问和处理每个事件。
Aspose.Email for .NET 23.6
-
在 MBOX 转 PST 转换中保留或移除签名 - 设置 MboxToPstConversionOptions.RemoveSignature 将属性设置为 ’true’ 以移除签名。
-
加载 EML 文件时移除签名 - 设置 LoadOptions.RemoveSignature 将属性设置为 ’true’ 以移除签名。
-
电子邮件签名检查
- 添加了一个新的 SecureEmailManager 用于检查安全电子邮件签名的类。现在可以检查 MapiMessage 和 MailMessage 对象的签名。
- 添加了一个新的 SmimeResult 用于存储安全电子邮件检查结果的类。
SecureEmailManager 引入的方法有:
- CheckSignature(MapiMessage msg)
- CheckSignature(MapiMessage msg, X509Certificate2 certificateForDecrypt)
- CheckSignature(MapiMessage msg, X509Certificate2 certificateForDecrypt, X509Store store)
- CheckSignature(MailMessage msg)
- CheckSignature(MailMessage msg, X509Certificate2 certificateForDecrypt)
- CheckSignature(MailMessage msg, X509Certificate2 certificateForDecrypt, X509Store store)
Aspose.Email for .NET 23.5
- 确定 ICS/VCS 文件的版本 - 使用 Version 属性的 Appointment 类,用于检索 ICS/VCS 文件的版本。
- 自定义 VCard 文件的保存选项 - 我们添加了新的 VCardSaveOptions 类到我们的 API,具有以下属性:
- VCardVersion 允许用户在保存联系人项时指定所需的 vCard 版本。默认情况下,类设置为使用 vCard 版本 2.1 (VCardVersion.V21)。
- UseExtensions - 允许用户控制在保存 vCard 文件时是否可以使用扩展字段。设置为 true(默认)时,允许扩展,以兼容自定义字段和额外的联系信息。
- PreferredTextEncoding - 保存 vCard 联系人项时使用的编码。
- 获取 Zimbra 存储中包含的消息项总数,使用 GetTotalItemsCount() 方法的 TgzReader 类。
- 通过路径检索 PST 子文件夹 - 使用 … 从当前 PST 文件夹检索具有指定名称的子文件夹 FolderInfo.GetSubFolder(string name, bool ignoreCase, bool handlePathSeparator) 方法重载。
Aspose.Email for .NET 23.4
- 向消息添加引用附件 - 我们已添加新的 添加 方法到 MapiAttachmentCollection 类,具有以下参数:’name’ - 附件的名称;‘sharedLink’ - 由 Web 服务提供的附件的完整共享链接;‘url’ - 文件位置;‘providerName’ - 引用附件提供者的名称。
- 多个 VCard 联系人检查 - 使用新的方法检查源文件是否包含多个联系人 VCardContact.IsMultiContacts(string filePath) 方法。
- 将日历 ICS 格式转换为消息格式 - 将约会转换为如 MapiMessage 和 MailMessage 的消息对象。
- HTML 和 MHTML 格式保存消息的附加选项:
- MapiTask.Priority - 获取或设置 Task 对象的当前 Priority(优先级)。
- MhtSaveOptions.SaveAllHeaders - 定义是否需要在输出 mhtml 中保存所有头部。
- HtmlFormatOptions.RenderTaskFields - 指示应在输出 HTML 中写入特定的 Task 字段。
- 为消息转换和加载过程设置超时 - 在转换和加载消息时限制毫秒数的时间,确保过程不会超过必要的时间。为此,已引入以下功能:
- MailConversionOptions.Timeout - 在转换消息时限制毫秒数的时间。
- MailConversionOptions.TimeoutReached - 在转换为 MailMessage 时,如果超时则抛出。
- MsgLoadOptions.Timeout - 在转换消息时限制毫秒数的时间。
- MsgLoadOptions.TimeoutReached - 在转换为 MailMessage 时,如果超时则抛出。
Aspose.Email for .NET 23.3
- 获取 OLM 存储中包含的消息项总数,使用 GetTotalItemsCount() 方法用于 OlmStorage 类。
- 确定 MapiMessage 是 OFT 还是 MSG - 使用新的方法确定 MapiMessage 是从 OFT 还是 MSG 文件加载的 MapiMessage.IsTemplate 属性。
- 检测 NSF 文件格式
Aspose.Email for .NET 23.1
-从 MboxMessageInfo 检索消息属性 - 获取存储在 mbox 文件中的各个消息的信息,例如消息大小、消息索引、消息头、消息标志以及其他与消息相关的元数据。我们已向…添加以下属性 MboxMessageInfo 类:
DateTime Date - 获取邮件的日期 MailAddress From - 获取发件人地址字符串 Subject - 获取邮件主题 MailAddressCollection To - 获取包含收件人地址的集合 MailAddressCollection CC - 获取包含抄送收件人的地址集合 MailAddressCollection Bcc - 获取包含密送收件人的地址集合
Aspose.Email for .NET 22.12
- 获取 PST 中包含的消息项总数 - 我们已添加 GetTotalItemsCount() 方法用于 PersonalStorage.Store 属性。
- 在个人存储中获取标准 RSS 源文件夹,在 PST 中添加标准 RSS 源文件夹 - 已在 StandardIpmFolder 枚举中添加了新的 RssFeeds 值。现在可以轻松检索或添加 RSS 源文件夹到存储中。
- 解密以 MAPI 格式存储的电子邮件消息 - 我们已在 MapiMessage 类中添加了 Decrypt 方法:
- MapiMessage.IsEncrypted - 获取一个值,指示消息是否已加密。
- MapiMessage.Decrypt() - 解密此消息(方法在当前用户和计算机的 My 存储区搜索适当的证书和私钥)。
- MapiMessage.Decrypt(X509Certificate2 certificate) - 使用证书解密此消息。
- 在将 MapiCalendar 保存为 ICS 时设置产品 ID - 我们已添加 ProductIdentifier 属性 MapiCalendarIcsSaveOptions 类。
- 通过标识符从 OLM 和 MBOX 中提取消息 - 这是避免每次遍历整个存储以查找特定要提取的消息的高效方法。
- 确定附件是内联还是常规,使用 MapiAttachment.IsInline 属性。
Aspose.Email for .NET 22.11
- 获取 MAPI 项目类型 - 避免在每次消息转换前检查 MessageClass 属性值。
- 从 MapiMessage 中删除签名 - 为了更好的兼容性, MapiMessage.RemoveSignature 方法和 MapiMessage.IsSigned 属性已添加。
- 识别预定义文件夹 - 新的 FolderInfo 方法, GetPredefinedType, 已引入,用于通过返回基于指定参数值的 StandardIpmFolder 枚举值来确定文件夹是否位于预定义文件夹内。
- 验证附件 TNEF 格式 - 该 Attachment.IsTnef 属性指示消息附件是否为 TNEF 格式的消息。
Aspose.Email for .NET 22.10
- 在 MapiMessage 中重命名附件 - 现在可以编辑 显示名称 属性值位于 MapiMessage 附件中。
Aspose.Email for .NET 22.9
- 使用 Graph API 列出消息 - 新的 OrderBy 方法,允许您根据指定的条件控制检索邮件的排序。
Aspose.Email for .NET 22.8
- 从 MBOX 读取邮件 - 我们引入了用于配置加载选项的新功能:
- MailStorageConverter.MboxMessageOptions 属性 - 获取或设置解析 Mbox 存储时的邮件加载选项。
- MboxrdStorageReader.ReadNextMessage(EmlLoadOptions options) 方法。EmlLoadOptions 参数指定从 Mbox 存储读取邮件时的选项。
Aspose.Email for .NET 22.7
- 获取邮件标识信息,如 UID 或序列号,可使用以下功能:
- MailboxInfo 类 - 表示邮箱中邮件的标识信息。
- SequenceNumber 属性 - 邮件的序列号。
- UniqueId 属性 - 邮件的唯一标识。
- MailMessage.ItemId 属性 - 表示邮箱中邮件的标识信息。
Aspose.Email for .NET 22.6
- 在 ICS 文件中保留原始时间戳 - 从 PST 文件中提取日历项,并使用以下选项以原始时间戳保存为 ICS 格式:
- MapiCalendarIcsSaveOptions - 允许在将 MapiCalendar 保存为 ICS 格式时指定其他选项。
- MapiCalendarIcsSaveOptions.KeepOriginalDateTimeStamp - 允许在输出文件中保留原始 DateTimeStamp 值。
Aspose.Email for .NET 22.5
- 通过 Graph 客户端枚举带分页支持的消息 - API 提供分页和过滤支持,以列出消息。当邮箱中有大量消息且检索这些消息的摘要信息需要大量时间时,这非常有用。
- 处理邮件客户端的异步模式 - 该任务的新方法包括以下 API 成员:
- IAsyncSmtpClient - 允许应用程序使用 Simple Mail Transfer Protocol(SMTP)发送消息。
- SmtpClient.CreateAsync - 创建 Aspose.Email.Clients.Smtp.SmtpClient 类的新实例。
- IAsyncSmtpClient.SendAsync(Aspose.Email.Clients.Smtp.Models.SmtpSend)方法参数集。
- IAsyncSmtpClient.ForwardAsync(Aspose.Email.Clients.Smtp.Models.SmtpForward)参数。
- IAsyncImapClient - 允许应用程序使用 Internet Message Access Protocol(IMAP)访问和操作消息。
- ImapClient.CreateAsync - 创建 Aspose.Email.Clients.Imap.ImapClient 类的新实例。
Aspose.Email for .NET 22.4
- 使用 MailGun 和 SendGrid 投递服务发送邮件 - 我们创建了统一的 API,您可以根据所使用的发送服务来初始化选项,使用构建器调用所需的客户端实例,准备并发送电子邮件。该 API 还提供了 Send 方法的异步版本。
- 在 ICS 文件中设置 X-ALT-DESC 标头 - 我们引入了一个新的 HtmlDescription 属性,用于设置 X-ALT-DESC 标头。
Aspose.Email for .NET 22.3
- 使用 IMAP 客户端列出邮件附件 - 获取附件的名称、大小等信息,而无需获取附件数据。涉及的 API 成员有:
- Aspose.Email.Clients.Imap.ImapAttachmentInfo - 表示附件信息。
- Aspose.Email.Clients.Imap.ImapAttachmentInfoCollection - 表示 ImapAttachmentInfo 的集合。
- Aspose.Email.Clients.Imap.ListAttachments(int sequenceNumber) - 获取消息中每个附件的信息。
- 通过 EWS 客户端获取带附件的项目 - 我们添加了 FetchItems(EwsFetchItems options) 方法用于 EwsClient。它接受一个实例 EwsFetchItems 类,作为参数以控制方法的行为。
Aspose.Email for .NET 22.2
- 添加引用附件 引入的 API 成员:
- Aspose.Email.ReferenceAttachment - 表示一个引用附件。
- Aspose.Email.AttachmentPermissionType - 与 Web 引用附件关联的权限类型数据。
- Aspose.Email.AttachmentProviderType - 操作附件的 Web 服务类型。
- 检索消息类 - 我们已添加 MessageClass 属性 ExchangeMessageInfo 类,用于在建立到 EWS 客户端的连接后,从公共文件夹中检索集合中每条消息的类。