Crea ed elimina cartelle su MS Exchange Server in C#

In Microsoft Exchange Server, le e-mail sono organizzate in diverse cartelle come Posta in arrivo, Posta in uscita, ecc. Inoltre, puoi creare le tue cartelle o sottocartelle in base alle tue esigenze. Durante l’utilizzo di MS Exchange Server, potrebbe essere necessario creare cartelle personalizzate a livello di codice. In questo articolo imparerai come creare cartelle o sottocartelle con EWS su MS Exchange Server in C# .NET. Inoltre, tratteremo come eliminare una cartella su Exchange Server.

API C# .NET per creare cartelle su MS Exchange Server

Per gestire le cartelle con EWS su MS Exchange Server, utilizzeremo Aspose.Email for .NET. L’API semplifica notevolmente l’utilizzo dei servizi di Exchange Server dall’interno delle applicazioni .NET. Puoi scaricare la DLL dell’API o installarla da NuGet usando il comando seguente.

PM> Install-Package Aspose.Email

Crea una cartella su MS Exchange Server in C#

Di seguito sono riportati i passaggi per creare una cartella su MS Exchange Server in C#.

L’esempio di codice seguente mostra come creare una cartella su MS Exchange Server con EWS in C#.

// Crea un'istanza della classe EWSClient fornendo le credenziali
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Ottieni URI posta in arrivo (per creare una cartella nella posta in arrivo)
string inbox = client.MailboxInfo.InboxUri;

// Specifica il nome della cartella
string folderName1 = "EMAILNET-35054";

try
{
    // Creare una cartella
    client.UseSlashAsFolderSeparator = true;
    client.CreateFolder(client.MailboxInfo.InboxUri, folderName1);
}
catch
{
    // Fare qualcosa
}

Crea una sottocartella su MS Exchange Server in C#

Per creare una sottocartella, dovresti prima controllare se la cartella principale esiste o meno. In tal caso, crea semplicemente la sottocartella, altrimenti crea prima la cartella principale. I passaggi seguenti illustrano come creare una sottocartella in MS Exchange Server in C#.

Nell’esempio di codice seguente viene illustrato come creare una sottocartella in MS Exchange Server in C#.

// Crea un'istanza della classe EWSClient fornendo le credenziali
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Ottieni l'URI della posta in arrivo
string inbox = client.MailboxInfo.InboxUri;

// Specifica il nome della cartella
string folderName1 = "EMAILNET-35054";

// Specificare il nome della sottocartella
string subFolderName = "2015";
string folderName2 = folderName1 + "/" + subFolderName;

ExchangeFolderInfo rootFolderInfo = null; 

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

    // Crea sottocartella
    client.CreateFolder(inbox, folderName2);
}
catch
{
    // Fare qualcosa
}

Elimina una cartella su MS Exchange Server in C#

Di seguito sono riportati i passaggi per eliminare una cartella su MS Exchange Server in C#.

Nell’esempio di codice seguente viene illustrato come eliminare una cartella in MS Exchange Server in C#.

// Crea un'istanza della classe EWSClient fornendo le credenziali
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Ottieni l'URI della posta in arrivo
string inbox = client.MailboxInfo.InboxUri;

// Specifica il nome della cartella
string folderName1 = "EMAILNET-35054";

ExchangeFolderInfo rootFolderInfo = null;

try
{
    // Controlla se la cartella esiste
    if (client.FolderExists(inbox, folderName1, out rootFolderInfo))
    {
        // Elimina cartella
        client.DeleteFolder(rootFolderInfo.Uri, true);
    }
}
catch
{
    // Fare qualcosa
}

Ottieni una licenza API gratuita

Puoi ottenere una licenza temporanea gratuita per utilizzare Aspose.Email per .NET senza limitazioni di valutazione.

Conclusione

In questo articolo hai imparato a lavorare con le cartelle su Microsoft Exchange Server con EWS in C#. Con l’aiuto di esempi di codice, hai visto come creare ed eliminare una cartella particolare su MS Exchange Server a livello di codice in C#. Inoltre, puoi esplorare la documentazione per saperne di più su Aspose.Email per .NET. Inoltre, puoi porre le tue domande tramite il nostro forum.

Guarda anche