Работа с пользовательской конфигурацией на сервере

Управление пользовательской конфигурацией

Aspose.Email для .NET может быть использован для управления пользовательской конфигурацией на сервере Exchange с помощью класса EWSClient. Этот класс использует Exchange Web Services, которые доступны только в Exchange Server 2007 и более поздних версиях. В этой статье мы рассмотрим, как читать, создавать, обновлять и удалять пользовательские конфигурации на Exchange Server 2010. Для всех функций, описанных в этой статье, требуется Microsoft Exchange Server 2010 Service Pack 1. Следующий фрагмент кода показывает, как подключиться к Exchange Server 2010 во всех примерах этой статьи.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET
private static IEWSClient GetExchangeEWSClient()
{
const string mailboxUri = "https://outlook.office365.com/ews/exchange.asmx";
const string domain = @"";
const string username = @"username@ASE305.onmicrosoft.com";
const string password = @"password";
NetworkCredential credentials = new NetworkCredential(username, password, domain);
IEWSClient client = EWSClient.GetEWSClient(mailboxUri, credentials);
return client;
}

Чтение пользовательской конфигурации

Чтобы получить информацию о пользовательской конфигурации конкретной папки с сервера Exchange:

  1. Подключитесь к серверу Exchange с помощью интерфейса IEWSClient.
  2. Вызовите метод IEWSClient.GetUserConfiguration(), чтобы получить пользовательскую конфигурацию для папки.
  3. Отобразите свойства пользовательской конфигурации, такие как ID, имя и элементы словаря в виде пар “ключ-значение”.

Следующий фрагмент кода показывает, как читать пользовательскую конфигурацию.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET
IEWSClient client = GetExchangeEWSClient();
Console.WriteLine("Connected to Exchange 2010");
// Get the User Configuration for Inbox folder
UserConfigurationName userConfigName = new UserConfigurationName("inbox.config", client.MailboxInfo.InboxUri);
UserConfiguration userConfig = client.GetUserConfiguration(userConfigName);
Console.WriteLine("Configuration Id: " + userConfig.Id);
Console.WriteLine("Configuration Name: " + userConfig.UserConfigurationName.Name);
Console.WriteLine("Key value pairs:");
foreach (string key in userConfig.Dictionary.Keys)
{
Console.WriteLine(key + ": " + userConfig.Dictionary[key].ToString());
}

Создание пользовательских конфигураций

Чтобы создать пользовательскую конфигурацию для конкретной папки на сервере Exchange:

  1. Подключитесь к серверу Exchange с помощью интерфейса IEWSClient.
  2. Вызовите метод IEWSClient.CreateUserConfiguration(), чтобы создать пользовательскую конфигурацию для папки.

Следующий фрагмент кода показывает, как создавать пользовательские конфигурации.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET
IEWSClient client = GetExchangeEWSClient();
Console.WriteLine("Connected to Exchange 2010");
// Create the User Configuration for Inbox folder
UserConfigurationName userConfigName = new UserConfigurationName("inbox.config", client.MailboxInfo.InboxUri);
UserConfiguration userConfig = new UserConfiguration(userConfigName);
userConfig.Dictionary.Add("key1", "value1");
userConfig.Dictionary.Add("key2", "value2");
userConfig.Dictionary.Add("key3", "value3");
client.CreateUserConfiguration(userConfig);

Обновление пользовательской конфигурации

Чтобы обновить пользовательскую конфигурацию для конкретной папки на сервере Exchange:

  1. Подключитесь к серверу Exchange с помощью интерфейса IEWSClient.
  2. Вызовите метод IEWSClient.UpdateUserConfiguration(), чтобы обновить пользовательскую конфигурацию для папки.

Следующий фрагмент кода показывает, как обновить пользовательскую конфигурацию.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET
IEWSClient client = GetExchangeEWSClient();
Console.WriteLine("Connected to Exchange 2010");
// Create the User Configuration for Inbox folder
UserConfigurationName userConfigName = new UserConfigurationName("inbox.config", client.MailboxInfo.InboxUri);
UserConfiguration userConfig = client.GetUserConfiguration(userConfigName);
userConfig.Id = null;
// Update User Configuration
userConfig.Dictionary["key1"] = "new-value1";
client.UpdateUserConfiguration(userConfig);

Удаление пользовательской конфигурации

Чтобы удалить пользовательскую конфигурацию для конкретной папки на сервере Exchange:

  1. Подключитесь к серверу Exchange с помощью интерфейса IEWSClient.
  2. Вызовите метод IEWSClient.DeleteUserConfiguration(), чтобы удалить пользовательскую конфигурацию для папки.

Следующий фрагмент кода показывает, как удалить пользовательскую конфигурацию.

// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET
NetworkCredential credentials = new NetworkCredential(username, password, domain);
IEWSClient client = EWSClient.GetEWSClient(mailboxUri, credentials);
Console.WriteLine("Connected to Exchange 2010");
// Delete User Configuration
UserConfigurationName userConfigName = new UserConfigurationName("inbox.config", client.MailboxInfo.InboxUri);
client.DeleteUserConfiguration(userConfigName);