gpt4 book ai didi

c# - Exchange Managed API - 所有返回的 EmailMessages 都具有相同的唯一 ID 字符串

转载 作者:行者123 更新时间:2023-11-30 13:48:17 25 4
gpt4 key购买 nike

我正在使用 C# 中的 Exchange Managed API 来访问 Exchange 2010 中的数据。我正在尝试为返回的电子邮件项目返回唯一标识符,以便稍后可以通过该 ID 在单独的调用中检索它们(即首先调用返回所有邮件项目,然后第二次调用以检索单个项目以将其标记为已读等)。我遇到的问题是作为每个邮件项的 UniqueId 返回的字符串是相同的。最重要的是,每个附件项的 ID 也是相同的字符串。

我正在使用此代码从收件箱文件夹中检索未读邮件。

var maxItems = 10;
var searchFilter = new SearchFilter.IsEqualTo(EmailMessageSchema.IsRead, false);
var itemView = new ItemView(maxItems);
FindItemsResults<Item> mailItems = service.FindItems(WellKnownFolderName.Inbox, searchFilter, itemView);

当我解析 mailItems 集合中的每个项目时,每个项目的 Id.UniqueId.ToString() 都是相同的。

我在这里错过了什么?

谢谢

最佳答案

唯一 ID 对于 EWS 项目是唯一的。我遇到了这个问题,因为我认为我遇到了同样的问题。事实证明它们只是区分大小写。

如果您将 ID 保存在数据库中,则需要确保 ID 列的排序规则区分大小写。我将我的 SQL_Latin1_General_Cp1_CI_AS 更改为 SQL_Latin1_General_Cp1_CS_AS。其中 CI 不区分大小写,CS 区分大小写。

您根本不必使用 ChangeKey。

请参阅EWS Identifiers in Exchange了解更多信息。

要记住的一件事是链接中提到的,移动时 ID 可能会发生变化。这是因为它们被复制到新位置并且原始位置被删除。

关于c# - Exchange Managed API - 所有返回的 EmailMessages 都具有相同的唯一 ID 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13077962/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com