Перечисление, управление и резервное копирование папок Exchange Server с помощью EWS
Список всех папок с сервера
API Aspose.Email предоставляет возможность подключаться к Exchange Server и перечислять все папки и подпапки. Вы также можете рекурсивно получать все подпапки из каждой папки. Кроме того, она позволяет перечислять папки с постраничным выводом из клиента Exchange, используя Exchange Web Service (EWS). Эта статья показывает, как получить все подпапки с сервера Exchange и извлекать папки с постраничной навигацией.
Следующий фрагмент кода показывает, как вывести список папок с сервера Exchange.
Получить информацию о типе папки
Этот FolderType свойство, предоставляемое ExchangeFolderInfo класс можно использовать для получения информации о типе папки. Пример кода ниже.
Перечислить папки с поддержкой постраничного вывода
Следующий фрагмент кода показывает, как использовать поддержку постраничного вывода с помощью EWS.
Доступ к пользовательским папкам/подпапкам
IEWSClient позволяет разработчикам получать доступ к любой пользовательской папке или подпапке из ящика. FolderExists() функция IEWSClient возвращает URI указанной пользовательской папки/подпапки, который затем можно использовать для доступа к целевой папке. В следующем примере пользовательская папка с именем "TestInbox", созданная в папке INBOX, открывается, и выводятся все сообщения из этой папки. Чтобы выполнить эту задачу, выполните следующие шаги:
- Инициализируйте IEWSClient объект, предоставив действительные учетные данные.
- Получите доступ к почтовому ящику по умолчанию.
- Получите доступ к родительской папке, которая в этом примере является INBOX. Эта родительская папка также может быть пользовательской папкой.
- Использовать FolderExists() для поиска указанной пользовательской подпапки, например "TestInbox". Он вернет URI папки "TestInbox".
- Используйте этот URI для доступа ко всем сообщениям в этой пользовательской папке.
Следующий фрагмент кода показывает, как получить доступ к пользовательским папкам почтового ящика или подпапкам с помощью EWS.
Список публичных папок
Microsoft Exchange Server позволяет пользователям создавать публичные папки и размещать в них сообщения. Чтобы сделать это через ваше приложение, используйте Aspose.Email EWSClient класс для подключения к серверу Exchange и чтения и загрузки сообщений и постов из публичных папок. Приведенный ниже фрагмент кода показывает, как читать все публичные папки и подпапки, а также перечислять и загружать любые сообщения, найденные в этих папках. Этот пример работает только с Microsoft Exchange Server 2007 и выше, поскольку только они поддерживают EWS.
Копировать сообщения в другую папку
API Aspose.Email позволяет копировать сообщение из одной папки в другую с помощью CopyItem метод. Перегруженная версия этого метода возвращает уникальный URI скопированного сообщения, как показано в этой статье.
Синхронизация элементов папки
Aspose.Email for .NET API IEWSClient интерфейс предоставляет возможность синхронизации содержимого папки Exchange. SyncFolder метод, предоставляемый IEWSClient класс можно использовать для выполнения синхронизации информации о папке. Следующий фрагмент кода показывает, как синхронизировать информацию о папке Exchange.
Получить разрешения папки
Пользователям назначаются разрешения для публичных папок на Exchange Server, что ограничивает/определяет уровень доступа пользователя к этим папкам. ExchangeFolderPermission класс предоставляет набор свойств прав для папок Exchange, таких как PermissionLevel, могут ли они CanCreateItems, DeleteItems, и выполнить другие задачи, указанные в свойствах прав. Права можно получить, используя GetFolderPermissions() метод IEWSClient. Эта статья показывает, как получить права, примененные к публичной папке, для всех пользователей, имеющих доступ к общим папкам.
Для выполнения этой задачи:
- Инициализируйте EWSClient.
- Используйте ListPublicFolders для получения списка всех публичных папок
- Получить разрешения, связанные с папкой, используя GetFolderPermisssions() метод
Следующий фрагмент кода показывает, как использовать EWSClient класс для получения прав, примененных к папке.
Создание и управление папками/подпапками
API Aspose.Email предоставляет возможность создавать папки в почтовом ящике Exchange. CreateFolder метод IEWSClient может быть использовано для этой цели. Чтобы создать папку в почтовом ящике сервера Exchange, можно выполнить следующие шаги.
- Создайте экземпляр IEWSClient.
- Установите UseSlashAsFolderSeparator свойство по необходимости. Если установить значение true, приложение будет рассматривать символ "/" как разделитель папок, и подпапка будет создана после этого слеша.
- Используйте CreateFolder метод для создания папки.
Следующий фрагмент кода показывает, как создавать папки и подпапки.
Резервное копирование папок в PST
Часто пользователи хотят создать резервную копию всех или некоторых папок почтового ящика. Aspose.Email предоставляет возможность создавать резервную копию всех или выбранных папок Exchange в PST. В этой статье описывается резервное копирование папок Exchange в PST с образцами кода. Чтобы выполнить резервное копирование папок сервера Exchange, следует выполнить следующие шаги.
- Инициализировать IEWSClient с учетными данными пользователя
- Добавьте информацию о требуемой папке в ExchangeFolderInfoCollection
- Используйте клиентский Резервное копирование метод для экспорта содержимого папки в PST.
Следующий фрагмент кода показывает, как резервировать папки Exchange в PST.