Ordner auf MS Exchange Server in C# erstellen und löschen

In Microsoft Exchange Server werden E-Mails in verschiedenen Ordnern wie Posteingang, Postausgang usw. organisiert. Außerdem können Sie je nach Bedarf Ihre eigenen Ordner oder Unterordner erstellen. Beim Arbeiten mit MS Exchange Server müssen Sie möglicherweise benutzerdefinierte Ordner programmgesteuert erstellen. In diesem Artikel erfahren Sie, wie Sie Ordner oder Unterordner mit EWS auf MS Exchange Server in C# .NET erstellen. Außerdem werden wir behandeln, wie man einen Ordner auf Exchange Server löscht.

C# .NET API zum Erstellen von Ordnern auf MS Exchange Server

Um Ordner mit EWS auf MS Exchange Server zu verwalten, verwenden wir Aspose.Email for .NET. Die API erleichtert die Arbeit mit den Diensten des Exchange-Servers innerhalb von .NET-Anwendungen erheblich. Sie können die DLL der API entweder herunterladen oder sie mit dem folgenden Befehl von NuGet installieren.

PM> Install-Package Aspose.Email

Erstellen Sie einen Ordner auf MS Exchange Server in C#

Im Folgenden sind die Schritte zum Erstellen eines Ordners auf MS Exchange Server in C# aufgeführt.

  • Stellen Sie eine Verbindung zu MS Exchange Server her und rufen Sie das EWS-Clientobjekt in IEWSClient ab.
  • Geben Sie den Namen des Stammordners und den Ordner an, den Sie erstellen möchten.
  • Ordner mit der Methode IEWSClient.CreateFolder(string, string) erstellen.

Das folgende Codebeispiel zeigt, wie Sie einen Ordner auf MS Exchange Server mit EWS in C# erstellen.

// Erstellen Sie eine Instanz der EWSClient-Klasse, indem Sie Anmeldeinformationen angeben
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Posteingangs-URI abrufen (um Ordner im Posteingang zu erstellen)
string inbox = client.MailboxInfo.InboxUri;

// Ordnernamen angeben
string folderName1 = "EMAILNET-35054";

try
{
    // Ordner erstellen
    client.UseSlashAsFolderSeparator = true;
    client.CreateFolder(client.MailboxInfo.InboxUri, folderName1);
}
catch
{
    // Etwas tun
}

Erstellen Sie einen Unterordner auf MS Exchange Server in C#

Um einen Unterordner zu erstellen, müssen Sie zuerst prüfen, ob der übergeordnete Ordner existiert oder nicht. Wenn dies der Fall ist, erstellen Sie einfach den Unterordner, andernfalls erstellen Sie zuerst den übergeordneten Ordner. Die folgenden Schritte zeigen, wie Sie einen Unterordner auf MS Exchange Server in C# erstellen.

Das folgende Codebeispiel zeigt, wie Sie einen Unterordner auf MS Exchange Server in C# erstellen.

// Erstellen Sie eine Instanz der EWSClient-Klasse, indem Sie Anmeldeinformationen angeben
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Rufen Sie den Posteingangs-URI ab
string inbox = client.MailboxInfo.InboxUri;

// Ordnernamen angeben
string folderName1 = "EMAILNET-35054";

// Geben Sie den Namen des Unterordners an
string subFolderName = "2015";
string folderName2 = folderName1 + "/" + subFolderName;

ExchangeFolderInfo rootFolderInfo = null; 

try
{
    client.UseSlashAsFolderSeparator = true;
    if (!client.FolderExists(inbox, folderName1, out rootFolderInfo))
    {
        // Ordner erstellen
        rootFolderInfo = client.CreateFolder(inbox, folderName1);
    }

    // Unterordner erstellen
    client.CreateFolder(inbox, folderName2);
}
catch
{
    // Etwas tun
}

Löschen Sie einen Ordner auf MS Exchange Server in C#

Im Folgenden sind die Schritte zum Löschen eines Ordners auf MS Exchange Server in C# aufgeführt.

Das folgende Codebeispiel zeigt, wie Sie einen Ordner auf MS Exchange Server in C# löschen.

// Erstellen Sie eine Instanz der EWSClient-Klasse, indem Sie Anmeldeinformationen angeben
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Rufen Sie den Posteingangs-URI ab
string inbox = client.MailboxInfo.InboxUri;

// Ordnernamen angeben
string folderName1 = "EMAILNET-35054";

ExchangeFolderInfo rootFolderInfo = null;

try
{
    // Überprüfen Sie, ob der Ordner vorhanden ist
    if (client.FolderExists(inbox, folderName1, out rootFolderInfo))
    {
        // Lösche Ordner
        client.DeleteFolder(rootFolderInfo.Uri, true);
    }
}
catch
{
    // Etwas tun
}

Holen Sie sich eine kostenlose API-Lizenz

Sie können eine kostenlose temporäre Lizenz erhalten, um Aspose.Email für .NET ohne Evaluierungseinschränkungen zu verwenden.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie mit Ordnern auf Microsoft Exchange Server mit EWS in C# arbeiten. Anhand von Codebeispielen haben Sie gesehen, wie Sie einen bestimmten Ordner auf MS Exchange Server programmgesteuert in C# erstellen und löschen. Außerdem können Sie die Dokumentation durchsuchen, um mehr über Aspose.Email für .NET zu erfahren. Sie können Ihre Fragen auch über unser Forum stellen.

Siehe auch