zoukankan      html  css  js  c++  java
  • [EWS]查找 文件夹

    摘要

    有时在操作exchange的时候,需要查找用户exchange文件夹,比如用户新建了一些文件夹。

    一个例子

    这里以查找用户outlook邮箱中的历史对话文件夹为例。

      private const ExchangeVersion EXCHANGE_VERSION = ExchangeVersion.Exchange2010_SP2;
            private ExchangeService _service;
         
            public MyExchangeClient(UserInfo userInfo)
            {
                if (userInfo == null)
                {
                    throw new ArgumentNullException("user is empty");
                }
                this._userInfo = userInfo;
                this._service = new ExchangeService(EXCHANGE_VERSION);
       _service.Credentials = new NetworkCredential(userInfo.Itcode, userInfo.Pwd, _userInfo.Domain);
                    _service.Url = new Uri(ConfigManager.ExchangeServerUrl);
                
            }
     /// <summary>
            /// 查找对话历史文件夹
            /// </summary>
            /// <returns></returns>
            private Folder FindImHistoryFolder()
            {
                int _pageSize = 10;
                FolderView folderView = new FolderView(_pageSize, 0);
                folderView.PropertySet = new PropertySet(BasePropertySet.IdOnly);
                folderView.PropertySet.Add(FolderSchema.DisplayName);
                folderView.PropertySet.Add(FolderSchema.ChildFolderCount);
    
                folderView.Traversal = FolderTraversal.Shallow;
                Folder imHistoryFolder = null;
    
                FindFoldersResults findFolderResults;
                bool foundImHistoryFolder = false;
                do
                {
                    findFolderResults = this._service.FindFolders(WellKnownFolderName.MsgFolderRoot, folderView);
                    foreach (Folder folder in findFolderResults)
                    {
                        if (folder.DisplayName.ToLower() == "conversation history" || folder.DisplayName.ToLower() == "对话历史记录")
                        {
                            imHistoryFolder = folder;
                            foundImHistoryFolder = true;
                        }
                    }
                    folderView.Offset += _pageSize;
                } while (findFolderResults.MoreAvailable && !foundImHistoryFolder);
    
                return imHistoryFolder;
            }
  • 相关阅读:
    计算最大公因数
    最大子序列和问题
    C++三大函数:析构函数、复制构造函数和operator=
    C++函数返回值传递
    C++动态内存分配
    Halcon Assistants
    网格细分算法
    HDevelop Guide
    MeshLab
    point cloud registration
  • 原文地址:https://www.cnblogs.com/wolf-sun/p/7605666.html
Copyright © 2011-2022 走看看