1

我正在使用 EWS 并希望从 Office365 Exchange Online 获取对话历史文件夹。

可以通过从根文件夹中获取子文件夹来判断带有DisplayName的文件夹的方法来实现。

但是,用户可以将名称更改为此文件夹。

有没有从 ExtendedProperty 判断的方法来解决这个问题?此外,还有其他方法吗?

-代码示例-

        Folder folder = Folder.Bind(this._exchange, WellKnownFolderName.Root);
        //acquire the total number of cases including the subfolder. 
        FolderView view = new FolderView(1);
        view.Traversal = FolderTraversal.Deep;
        FindFoldersResults result = folder.FindFolders(view);
        //acquire All folders. 
        view.PageSize = result.TotalCount;
        result = folder.FindFolders(view);
        FindFoldersResults folders = folder.FindFolders(view);

        foreach (var f in folders.Folders)
        {
            //I want to judge the history folder of the conversation here excluding the DisplayName property. 
        }

请任何人提供一个好主意,样品。问候。

4

1 回答 1

1

要检查文件夹是否包含某些对话中的项目,您可以使用以下内容:

var filter = new SearchFilter.IsEqualTo(EmailMessageSchema.ConversationId, convId);
var itemView = new ItemView();
foreach (var f in folders.Folders)
{
    var findResult = f.FindItems(filter, itemView);
}

ConversationId过滤器应将查找结果限制为仅具有与您感兴趣的对话相同的属性的项目。

于 2011-07-13T09:24:16.090 回答