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
- Créer une tâche sur MS Exchange Server en C#
- Mettre à jour une tâche sur MS Exchange Server en C#
- Supprimer des tâches sur MS Exchange Server 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.
- Tout d’abord, connectez-vous à Exchange Server et obtenez l’instance du client EWS dans un objet IEWSClient.
- Créez ensuite une instance de la classe ExchangeTask.
- Définissez les propriétés des tâches telles que le sujet, le statut, etc.
- Enfin, créez une tâche à l’aide de la méthode IEWSClient.CreateTask(IEWSClient.MailboxInfo.TasksUri, ExchangeTask).
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.
- Tout d’abord, connectez-vous à Exchange Server et obtenez l’instance du client EWS dans un objet IEWSClient.
- Ensuite, récupérez les listes de tâches dans un objet ExchangeMessageInfoCollection à l’aide de la méthode IEWSClient.ListMessages(IEWSClient.MailboxInfo.TasksUri).
- Boucle sur chaque ExchangeMessageInfo de la collection.
- Récupérez chaque ExchangeTask à l’aide de la méthode IEWSClient.FetchTask(ExchangeMessageInfo.UniqueUri) et filtrez celle(s) requise(s).
- Enfin, modifiez les propriétés et mettez à jour la tâche à l’aide de la méthode IEWSClient.UpdateTask(ExchangeTask).
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#.
- Tout d’abord, connectez-vous à Exchange Server et obtenez l’instance du client EWS dans un objet IEWSClient.
- Ensuite, récupérez les listes de tâches dans un objet ExchangeMessageInfoCollection à l’aide de la méthode IEWSClient.ListMessages(IEWSClient.MailboxInfo.TasksUri).
- Boucle sur chaque ExchangeMessageInfo de la collection.
- Récupérez chaque ExchangeTask à l’aide de la méthode IEWSClient.FetchTask(ExchangeMessageInfo.UniqueUri) et filtrez celle(s) requise(s).
- Enfin, supprimez la tâche à l’aide de la méthode IEWSClient.DeleteItem(ExchangeTask.UniqueUri, DeletionOptions.DeletePermanently).
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.