Buat dan Hapus Folder di MS Exchange Server di C#

Di Microsoft Exchange Server, email diatur dalam folder yang berbeda seperti kotak masuk, kotak keluar, dll. Anda juga dapat membuat folder atau subfolder sendiri berdasarkan kebutuhan Anda. Saat bekerja dengan MS Exchange Server, Anda mungkin perlu membuat folder khusus secara terprogram. Pada artikel ini, Anda akan mempelajari cara membuat folder atau subfolder dengan EWS di MS Exchange Server di C# .NET. Juga, kami akan membahas cara menghapus folder di Exchange Server.

C# .NET API untuk Membuat Folder di MS Exchange Server

Untuk mengelola folder dengan EWS di MS Exchange Server, kami akan menggunakan Aspose.Email for .NET. API membuatnya lebih mudah untuk bekerja dengan layanan Exchange Server dari dalam aplikasi .NET. Anda dapat mengunduh DLL API atau menginstalnya dari NuGet menggunakan perintah berikut.

PM> Install-Package Aspose.Email

Buat Folder di MS Exchange Server di C#

Berikut langkah-langkah membuat folder di MS Exchange Server di C#.

Contoh kode berikut menunjukkan cara membuat folder di MS Exchange Server dengan EWS di C#.

// Buat instance kelas EWSClient dengan memberikan kredensial
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Dapatkan URI kotak masuk (untuk membuat folder di kotak masuk)
string inbox = client.MailboxInfo.InboxUri;

// Tentukan nama folder
string folderName1 = "EMAILNET-35054";

try
{
    // Membuat folder
    client.UseSlashAsFolderSeparator = true;
    client.CreateFolder(client.MailboxInfo.InboxUri, folderName1);
}
catch
{
    // Lakukan sesuatu
}

Buat Subfolder di MS Exchange Server di C#

Untuk membuat subfolder, pertama-tama Anda perlu memeriksa apakah folder induk ada atau tidak. Jika ya, cukup buat subfolder, jika tidak, buat folder induk terlebih dahulu. Langkah-langkah berikut menunjukkan cara membuat subfolder di MS Exchange Server di C#.

Contoh kode berikut menunjukkan cara membuat subfolder di MS Exchange Server di C#.

// Buat instance kelas EWSClient dengan memberikan kredensial
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Dapatkan URI kotak masuk
string inbox = client.MailboxInfo.InboxUri;

// Tentukan nama folder
string folderName1 = "EMAILNET-35054";

// Tentukan nama subfolder
string subFolderName = "2015";
string folderName2 = folderName1 + "/" + subFolderName;

ExchangeFolderInfo rootFolderInfo = null; 

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

    // Buat subfolder
    client.CreateFolder(inbox, folderName2);
}
catch
{
    // Lakukan sesuatu
}

Hapus Folder di MS Exchange Server di C#

Berikut langkah-langkah menghapus folder di MS Exchange Server di C#.

Contoh kode berikut menunjukkan cara menghapus folder di MS Exchange Server di C#.

// Buat instance kelas EWSClient dengan memberikan kredensial
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Dapatkan URI kotak masuk
string inbox = client.MailboxInfo.InboxUri;

// Tentukan nama folder
string folderName1 = "EMAILNET-35054";

ExchangeFolderInfo rootFolderInfo = null;

try
{
    // Periksa apakah folder ada
    if (client.FolderExists(inbox, folderName1, out rootFolderInfo))
    {
        // Hapus folder
        client.DeleteFolder(rootFolderInfo.Uri, true);
    }
}
catch
{
    // Lakukan sesuatu
}

Dapatkan Lisensi API Gratis

Anda bisa mendapatkan lisensi sementara gratis untuk menggunakan Aspose.Email for .NET tanpa batasan evaluasi.

Kesimpulan

Dalam artikel ini, Anda telah mempelajari cara bekerja dengan folder di Microsoft Exchange Server dengan EWS di C#. Dengan bantuan contoh kode, Anda telah melihat cara membuat dan menghapus folder tertentu di MS Exchange Server secara terprogram di C#. Selain itu, Anda dapat menjelajahi dokumentasi untuk membaca lebih lanjut tentang Aspose.Email for .NET. Selain itu, Anda dapat mengajukan pertanyaan melalui forum kami.

Lihat juga