Flytta e-post till en mapp i Microsoft Exchange Server med C#

Microsoft Exchange Server är en allmänt använd samarbetsplattform som tillhandahåller e-post, kontakthantering, kalender och andra tjänster. I föregående inlägg har vi visat dig hur du kommer åt och läser e-postmeddelanden från MS Exchange Server programmatiskt i en .NET-applikation. Du kan dock också behöva kopiera e-postmeddelanden från en mapp till en annan på Exchange Server. För att uppnå det visar den här artikeln hur du flyttar e-postmeddelanden till en viss mapp på MS Exchange Server i C# .NET.

C# .NET API för att flytta e-postmeddelanden på Microsoft Exchange Server

För att flytta e-postmeddelandena på MS Exchange Server kommer vi att använda Aspose.Email for .NET. API ger enkla sätt att ansluta till och arbeta med MS Exchange Server. Du kan installera den via NuGet eller ladda ner dess DLL.

PM> Install-Package Aspose.Email

Flytta e-post till en mapp på MS Exchange Server i C#

Följande är stegen för att flytta e-postmeddelanden till en viss mapp på MS Exchange Server i C#.

Följande kodexempel visar hur man flyttar ett e-postmeddelande till en mapp på MS Exchange Server i C# .NET.

try
{
    // Skapa en instans av klassen EWSClient genom att ge referenser
    IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

    // Ring ListMessages-metod för att lista meddelandeinformation från inkorgen
    ExchangeMessageInfoCollection msgCollection = client.ListMessages(client.MailboxInfo.InboxUri);

    // Gå igenom samlingen för att få meddelande-URI
    foreach (ExchangeMessageInfo msgInfo in msgCollection)
    {
        if (msgInfo.From.Address.Contains("jhon.vick"))
        {
            String strMessageURI = msgInfo.UniqueUri;

            // Kopiera till en viss mapp
            string newMessageUri = client.CopyItem(strMessageURI, client.MailboxInfo.DeletedItemsUri);
        }
    }                
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message);
}

Flytta ny e-post till en mapp på MS Exchange Server

Du kan också flytta ett nyskapat e-postmeddelande till en viss mapp i MS Exchange Server. Följande är stegen för att utföra denna operation.

Följande kodexempel visar hur du flyttar ett nytt e-postmeddelande till en mapp i MS Exchange Server.

try
{
    // Skapa en instans av klassen EWSClient genom att ge referenser
    IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

    // Skapa meddelande
    MailMessage message = new MailMessage("from@domain.com", "to@domain.com", "EMAILNET-34997 - " + Guid.NewGuid().ToString(), "EMAILNET-34997 Exchange: Copy a message and get reference to the new Copy item");

    // Få meddelande-URI
    string messageUri = client.AppendMessage(message);

    // Kopiera meddelande
    string newMessageUri = client.CopyItem(messageUri, client.MailboxInfo.OutboxUri);
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message);
}

Skaffa en gratis API-licens

Du kan få en gratis temporär licens för att använda Aspose.Email för .NET utan utvärderingsbegränsningar.

Slutsats

I den här artikeln har du lärt dig hur du flyttar e-postmeddelanden till en viss mapp i Microsoft Exchange Server med C#. Dessutom har du sett hur man flyttar ett nyskapat e-postmeddelande till en specifik mapp i Exchange Server. Dessutom kan du utforska dokumentationen för att läsa mer om Aspose.Email för .NET. Du kan också ställa dina frågor via vårt forum.

Se även