Créer, mettre à jour ou supprimer des tâches sur MS Exchange Server en C#

Diverses personnes créent une liste d’activités à effectuer, également appelée liste de tâches. Ces listes sont généralement créées sur un papier, un éditeur de texte, des feuilles de calcul, etc. Microsoft vous offre également la possibilité de créer et de gérer des listes de tâches et de les qualifier de tâches. Dans cet article, nous verrons comment ajouter, mettre à jour ou supprimer des tâches sur MS Exchange Server par programmation en C#.

API .NET pour gérer les tâches sur MS Exchange Server

Pour créer, mettre à jour ou supprimer des tâches sur MS Exchange Server, nous utiliserons Aspose.Email for .NET. Il s’agit d’une API riche en fonctionnalités pour créer des applications client de messagerie et travailler avec MS Exchange Server sans écrire de code complexe. Vous pouvez soit télécharger la DLL de l’API, soit l’installer à partir de NuGet à l’aide de la commande suivante.

PM> Install-Package Aspose.Email

Créer une tâche sur MS Exchange Server en C#

Voici les étapes pour créer des tâches sur MS Exchange Server en C# .NET.

L’exemple de code suivant montre comment créer des tâches sur MS Exchange Server à l’aide de C#.

// Créer une instance de la classe EWSClient en donnant des informations d'identification
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Créer un objet de tâche Exchange
ExchangeTask task = new ExchangeTask();

// Définir le sujet et le statut de la tâche (ou d'autres propriétés)
task.Subject = "New-Test";
task.Status = ExchangeTaskStatus.InProgress;

// Créer une tâche
client.CreateTask(client.MailboxInfo.TasksUri, task);

Tâche de mise à jour sur MS Exchange Server en C#

Vous pouvez également accéder et mettre à jour les tâches existantes sur MS Exchange Server par programmation à l’aide de C#. Voici les étapes pour effectuer cette opération.

L’exemple de code suivant montre comment mettre à jour une tâche sur MS Exchange Server en C#.

// Créer et initialiser les informations d'identification
var credentials = new NetworkCredential("username", "12345");

// Créer une instance de la classe ExchangeClient en donnant des informations d'identification
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Obtenir la collecte d'informations sur les tâches à partir de l'échange
ExchangeMessageInfoCollection tasks = client.ListMessages(client.MailboxInfo.TasksUri);

// Analyser toutes les tâches de la liste
foreach (ExchangeMessageInfo info in tasks)
{
    // Récupérer la tâche de l'échange en utilisant les informations de la tâche actuelle
    ExchangeTask task = client.FetchTask(info.UniqueUri);

    // Mettre à jour le statut de la tâche
    task.Status = ExchangeTaskStatus.NotStarted;

    // Définir la date d'échéance de la tâche
    task.DueDate = new DateTime(2013, 2, 26);

    // Définir la priorité des tâches
    task.Priority = MailPriority.Low;

    // Mettre à jour la tâche sur l'échange
    client.UpdateTask(task);
}

Supprimer des tâches sur MS Exchange Server en C#

Voici les étapes pour supprimer des tâches sur le serveur MS Exchange en C#.

L’exemple de code suivant montre comment supprimer des tâches de MS Exchange Server en C#.

// Créer une instance de la classe ExchangeClient en donnant des informations d'identification
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Obtenir la collection de tâches de l'échange
ExchangeMessageInfoCollection tasks = client.ListMessages(client.MailboxInfo.TasksUri);

// Analyser toutes les tâches de la liste
foreach (ExchangeMessageInfo info in tasks)
{
    // Récupérer la tâche de l'échange en utilisant les informations de la tâche actuelle
    ExchangeTask task = client.FetchTask(info.UniqueUri);

    // Vérifier si la tâche en cours remplit les critères
    if (task.Subject.Equals("test"))
    {
        // Supprimer la tâche de l'échange
        client.DeleteItem(task.UniqueUri, DeletionOptions.DeletePermanently);
    }
}

Obtenez une licence API gratuite

Vous pouvez obtenir une licence temporaire gratuite pour utiliser Aspose.Email for .NET sans limitation d’évaluation.

Conclusion

Dans cet article, vous avez appris à gérer les tâches sur Microsoft Exchange Server. En particulier, vous avez vu comment ajouter, mettre à jour ou supprimer des tâches sur MS Exchange Server par programmation en C#. Parallèlement, vous pouvez explorer la documentation pour en savoir plus sur Aspose.Email for .NET. Vous pouvez également poser vos questions via notre forum.

Voir également