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 .NET per creare cartelle con EWS su MS Exchange Server
- Crea una cartella su MS Exchange Server
- Crea una sottocartella su MS Exchange Server
- Elimina una cartella su MS 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#.
- Connettiti a MS Exchange Server e ottieni l’oggetto client EWS in IEWSClient.
- Specificare il nome della cartella principale e la cartella che si desidera creare.
- Crea una cartella usando il metodo IEWSClient.CreateFolder(string, string).
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#.
- Connettiti a MS Exchange Server e ottieni l’oggetto client EWS in IEWSClient.
- Specificare il nome della cartella principale e della sottocartella.
- Verificare se la cartella padre esiste utilizzando il metodo IEWSClient.FolderExists(string, string, ExchangeFolderInfo). In caso contrario, creane uno.
- Crea una sottocartella usando il metodo IEWSClient.CreateFolder(string, string).
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#.
- Connettiti a MS Exchange Server e ottieni l’oggetto client EWS in IEWSClient.
- Verificare se la cartella esiste utilizzando il metodo IEWSClient.FolderExists(string, string, ExchangeFolderInfo).
- Elimina la cartella utilizzando il metodo IEWSClient.DeleteFolder(string, bool).
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.