使用 C# 在 MS Exchange Server 上创建、更新或删除任务

不同的人创建要执行的活动列表,也称为待办事项列表。此类列表通常是在纸张、文本编辑器、电子表格等上创建的。Microsoft 还为您提供了创建和管理待办事项列表并将其称为任务的功能。在本文中,我们将介绍如何使用 C# 以编程方式在 MS Exchange Server 上添加、更新或删除任务。

在 MS Exchange Server 上创建和更新任务的 C# API

要在 MS Exchange Server 上创建、更新或删除任务,我们将使用 Aspose.Email for .NET。它是一个功能丰富的 API,用于创建电子邮件客户端应用程序并与 MS Exchange Server 一起工作,而无需编写复杂的代码。您可以 下载 API 的 DLL 或使用以下命令从 NuGet 安装它。

PM> Install-Package Aspose.Email

使用 C# 在 MS Exchange Server 上创建任务

以下是在 C# .NET 中在 MS Exchange Server 上创建任务的步骤。

以下代码示例展示了如何使用 C# 在 MS Exchange Server 上创建任务。

// 通过提供凭据创建 EWSClient 类的实例
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// 创建 Exchange 任务对象
ExchangeTask task = new ExchangeTask();

// 设置任务主题和状态(或其他属性)
task.Subject = "New-Test";
task.Status = ExchangeTaskStatus.InProgress;

// 创建任务
client.CreateTask(client.MailboxInfo.TasksUri, task);

在 C# 中更新 MS Exchange 服务器上的任务

您还可以使用 C# 以编程方式访问和更新 MS Exchange Server 上的现有任务。以下是执行此操作的步骤。

以下代码示例显示了如何在 C# 中更新 MS Exchange Server 上的任务。

// 创建和初始化凭据
var credentials = new NetworkCredential("username", "12345");

// 通过提供凭据创建 ExchangeClient 类的实例
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// 从 Exchange 获取任务信息集合
ExchangeMessageInfoCollection tasks = client.ListMessages(client.MailboxInfo.TasksUri);

// 解析列表中的所有任务
foreach (ExchangeMessageInfo info in tasks)
{
    // 使用当前任务信息从交换中获取任务
    ExchangeTask task = client.FetchTask(info.UniqueUri);

    // 更新任务状态
    task.Status = ExchangeTaskStatus.NotStarted;

    // 设置任务截止日期
    task.DueDate = new DateTime(2013, 2, 26);

    // 设置任务优先级
    task.Priority = MailPriority.Low;

    // 交易所更新任务
    client.UpdateTask(task);
}

在 C# 中删除 MS Exchange Server 上的任务

以下是在 C# 中删除 MS Exchange 服务器上的任务的步骤。

以下代码示例展示了如何在 C# 中从 MS Exchange Server 中删除任务。

// 通过提供凭据创建 ExchangeClient 类的实例
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// 从交换中获取任务集合
ExchangeMessageInfoCollection tasks = client.ListMessages(client.MailboxInfo.TasksUri);

// 解析列表中的所有任务
foreach (ExchangeMessageInfo info in tasks)
{
    // 使用当前任务信息从交换中获取任务
    ExchangeTask task = client.FetchTask(info.UniqueUri);

    // 检查当前任务是否满足条件
    if (task.Subject.Equals("test"))
    {
        // 从交换中删除任务
        client.DeleteItem(task.UniqueUri, DeletionOptions.DeletePermanently);
    }
}

用于管理 Exchange Server 任务的 C# API - 获取免费许可证

您可以获得 免费临时许可证 在 MS Exchange Server 上处理任务而不受评估限制。

结论

在本文中,您学习了如何在 Microsoft Exchange Server 上管理任务。特别是,您已经了解了如何使用 C# 以编程方式在 MS Exchange Server 上添加、更新或删除任务。此外,您可以浏览 文档 以了解更多关于 Aspose.Email for .NET 的信息。此外,您可以通过我们的 论坛 提问。

也可以看看