Exemple #1
0
        public async Task <EwsFolderIdentifier> EnsureSearchFolderAsync(EwsSyncServer server)
        {
            var searchFolders = await server.GetSubFoldersAsync(EwsKnownFolderIdentifiers.SearchFolders);

            var searchFolder = searchFolders.Folders.FirstOrDefault(f => f.DisplayName.Equals(SearchFolderName, StringComparison.OrdinalIgnoreCase));

            if (searchFolder != null)
            {
                return(searchFolder);
            }

            // search folder does not exist, create it
            var result = await server.CreateSearchFolderAsync(SearchFolderName);

            if (result.Identifiers.Count == 1)
            {
                LogService.Log("EwsSyncService", "Search folder created");
                return(result.Identifiers[0]);
            }

            LogService.Log("EwsSyncService", "Unable to create search folder");

            return(null);
        }