Exchange Sunucusunda Konuşma Öğelerini Yönetme

Aspose.Email for .NET, Exchange Sunucusunda konuşma öğelerini yönetmek için kullanılabilir EWSClient sınıf. Bu sınıf Exchange Web Services’i kullanır; bu hizmetler yalnızca Exchange Server 2007 ve sonraki sürümlerde mevcuttur. Bu makale, nasıl olduğunu gösterir bul, kopyala, taşı ve sil Exchange Server 2010 üzerindeki konuşma öğeleri. Bu bölümdeki tüm özellikler için Microsoft Exchange Server 2010 Service Pack 1 gereklidir.

Konuşmaları Bul

Exchange Server’da belirli bir klasörden konuşma bilgilerini almak için:

  1. Exchange Sunucusuna bağlanmak için IEWSClient arayüzü.
  2. Şuğu çağırın IEWSClient.FindConversations() klasörden tüm konuşma öğelerini bulmak için yöntem.
  3. Konuşma öğesi özelliklerini, ID, konuşma konusu ve işaret durumu gibi gösterin.

Aşağıdaki kod örneği, konuşmaları nasıl bulacağınızı gösterir.

IEWSClient client = EWSClient.GetEWSClient(mailboxUri, credentials);
Console.WriteLine("Connected to Exchange 2010"); 
            
// Find Conversation Items in the Inbox folder
ExchangeConversation[] conversations = client.FindConversations(client.MailboxInfo.InboxUri);
// Show all conversations
foreach (ExchangeConversation conversation in conversations)
{
    // Display conversation properties like Id and Topic
    Console.WriteLine("Topic: " + conversation.ConversationTopic);
    Console.WriteLine("Flag Status: " + conversation.FlagStatus.ToString());
    Console.WriteLine();
}

Konuşmaları Kopyala

Konuşmaları bir klasörden diğerine kopyalamak için:

  1. Exchange Sunucusuna bağlanmak için IEWSClient arayüzü.
  2. Şuğu çağırın IEWSClient.CopyConversationItems() konuşma öğesini kaynak klasörden hedef klasöre kopyalamak için yöntem.

Aşağıdaki kod örneği, konuşmaların nasıl kopyalanacağını gösterir.

IEWSClient client = EWSClient.GetEWSClient(mailboxUri, credentials);
Console.WriteLine("Connected to Exchange 2010");
            
// Find those Conversation Items in the Inbox folder which we want to copy
ExchangeConversation[] conversations = client.FindConversations(client.MailboxInfo.InboxUri);
foreach (ExchangeConversation conversation in conversations)
{
    Console.WriteLine("Topic: " + conversation.ConversationTopic);
    // Copy the conversation item based on some condition
    if (conversation.ConversationTopic.Contains("test email") == true)
    {
        client.CopyConversationItems(conversation.ConversationId, client.MailboxInfo.DeletedItemsUri);
        Console.WriteLine("Copied the conversation item to another folder");
    }
}

Konuşmaları Taşı

Konuşmaları bir klasörden diğerine taşımak için:

  1. Exchange Sunucusuna bağlanmak için IEWSClient arayüzü.
  2. Şuğu çağırın IEWSClient.MoveConversationItems() konuşmayı kaynak klasörden hedef klasöre taşımak için yöntem.

Aşağıdaki kod örneği, konuşmaların nasıl taşınacağını gösterir.

IEWSClient client = EWSClient.GetEWSClient(mailboxUri, credentials);
Console.WriteLine("Connected to Exchange 2010");
            
// Find those Conversation Items in the Inbox folder which we want to move
ExchangeConversation[] conversations = client.FindConversations(client.MailboxInfo.InboxUri);

foreach (ExchangeConversation conversation in conversations)
{
    Console.WriteLine("Topic: " + conversation.ConversationTopic);
    // Move the conversation item based on some condition
    if (conversation.ConversationTopic.Contains("test email") == true)
    {
        client.MoveConversationItems(conversation.ConversationId, client.MailboxInfo.DeletedItemsUri);
        Console.WriteLine("Moved the conversation item to another folder");
    }
}

Konuşmaları Sil

Bir klasörden konuşmaları silmek için:

  1. Exchange Sunucusuna bağlanmak için IEWSClient arayüzü.
  2. Şuğu çağırın IEWSClient.DeleteConversationItems() konuşma öğesini kaynak klasörden silmek için yöntem.

Aşağıdaki kod örneği, konuşmaları nasıl sileceğinizi gösterir.

IEWSClient client = EWSClient.GetEWSClient(mailboxUri, credentials);
Console.WriteLine("Connected to Exchange 2010");
            
// Find those Conversation Items in the Inbox folder which we want to delete
ExchangeConversation[] conversations = client.FindConversations(client.MailboxInfo.InboxUri);
foreach (ExchangeConversation conversation in conversations)
{
    Console.WriteLine("Topic: " + conversation.ConversationTopic);
    // Delete the conversation item based on some condition
    if (conversation.ConversationTopic.Contains("test email") == true)
    {
        client.DeleteConversationItems(conversation.ConversationId);
        Console.WriteLine("Deleted the conversation item");
    }
}