query-string - 使用带有引号的查询字符串进行 EWS 搜索不适用于 Exchange 2016
问题描述
我工作的应用程序使用带有查询字符串的 EWS 来搜索文件夹中的电子邮件。当我指定像主题:“纽约”这样的查询字符串时,它不会返回任何主题为“纽约喷气机队”或“纽约大都会队”的电子邮件。它只会返回完全匹配的电子邮件,例如“New York”。这适用于 office365,但不适用于 Exchange 2016。有谁知道为什么它不能按照以下文章中的说明工作:https ://docs.microsoft.com/en-us/exchange/client-developer/exchange-web-服务/如何执行-aqs-search-by-using-ews-in-exchange
我的功能代码:
private List<Item> RetrieveItems(Folder folder, string query)
{
const int PAGE_SIZE = 500;
List<Item> items = new List<Item>();
int offset = 0;
bool moreResults = false;
do
{
ItemView view = new ItemView(PAGE_SIZE, offset);
view.PropertySet = new PropertySet(EmailMessageSchema.Subject, EmailMessageSchema.LastModifiedTime, EmailMessageSchema.DateTimeCreated, EmailMessageSchema.Size, EmailMessageSchema.ItemClass, ItemSchema.HasAttachments);
FindItemsResults<Item> results = null;
Retry(() =>
{
results = folder.FindItems(query, view);
});
// Modify this to support "Collect Non-Email Data" (for non-public folder requests.)
// Right now, we are collecting email AND non-email data unconditionally.
items.AddRange(results);
offset += PAGE_SIZE;
moreResults = results.MoreAvailable;
}
while (moreResults);
return items;
}
解决方案
推荐阅读
- c# - 如何在 postsharp 中使用 MultipleInheritance
- raku - Raku Native 调用 gtk-clipboard-request-text?
- java - 传递多个文件时,Swing 窗口卡住
- amazon-web-services - AWS:我们可以考虑为单个产品提供“多个 EC2 实例和 RDS”作为水平扩展吗?
- sql - 如何有条件地禁用 SQL 中的联接?
- android - 如何在最新版本的 Kotlin for android 中调用 1-6 之间的随机整数?
- java - 使用 Java 检查 MySQL 数据库中的用户已存在时出错
- reactjs - 在我的 React 应用程序中,我无法将 removePlayer 方法作为道具传递给 Player 组件
- javascript - 问题 jquery ajax 调用,成功函数行为不正常
- google-compute-engine - 在 Google Compute Engine 虚拟机之间共享 SSD 或 RAMdisk