Criar, atualizar ou excluir tarefas no MS Exchange Server em C#

Várias pessoas criam uma lista de atividades a serem realizadas, que também é conhecida como lista de tarefas. Essas listas geralmente são criadas em um papel, editor de texto, planilhas, etc. A Microsoft também oferece a você o recurso de criar e gerenciar listas de tarefas e defini-las como tarefas. Neste artigo, abordaremos como adicionar, atualizar ou excluir tarefas no MS Exchange Server programaticamente em C#.

API .NET para gerenciar tarefas no MS Exchange Server

Para criar, atualizar ou excluir tarefas no MS Exchange Server, usaremos Aspose.Email for .NET. É uma API rica em recursos para criar aplicativos cliente de e-mail e trabalhar com o MS Exchange Server sem escrever códigos complexos. Você pode baixar a DLL da API ou instalá-la de NuGet usando o comando a seguir.

PM> Install-Package Aspose.Email

Criar uma tarefa no MS Exchange Server em C#

A seguir estão as etapas para criar tarefas no MS Exchange Server em C# .NET.

O exemplo de código a seguir mostra como criar tarefas no MS Exchange Server usando C#.

// Crie uma instância da classe EWSClient fornecendo credenciais
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Criar objeto de tarefa do Exchange
ExchangeTask task = new ExchangeTask();

// Definir assunto e status da tarefa (ou outras propriedades)
task.Subject = "New-Test";
task.Status = ExchangeTaskStatus.InProgress;

// Criar tarefa
client.CreateTask(client.MailboxInfo.TasksUri, task);

Tarefa de atualização no MS Exchange Server em C#

Você também pode acessar e atualizar as tarefas existentes no MS Exchange Server programaticamente usando C#. A seguir estão as etapas para realizar esta operação.

O exemplo de código a seguir mostra como atualizar uma tarefa no MS Exchange Server em C#.

// Criar e inicializar credenciais
var credentials = new NetworkCredential("username", "12345");

// Crie uma instância da classe ExchangeClient fornecendo credenciais
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Obter coleta de informações de tarefas do Exchange
ExchangeMessageInfoCollection tasks = client.ListMessages(client.MailboxInfo.TasksUri);

// Analisar todas as tarefas na lista
foreach (ExchangeMessageInfo info in tasks)
{
    // Buscar tarefa do Exchange usando as informações da tarefa atual
    ExchangeTask task = client.FetchTask(info.UniqueUri);

    // Atualizar o status da tarefa
    task.Status = ExchangeTaskStatus.NotStarted;

    // Defina a data de vencimento da tarefa
    task.DueDate = new DateTime(2013, 2, 26);

    // Definir prioridade da tarefa
    task.Priority = MailPriority.Low;

    // Atualizar tarefa no Exchange
    client.UpdateTask(task);
}

Excluir tarefas no MS Exchange Server em C#

A seguir estão as etapas para excluir tarefas no servidor MS Exchange em C#.

O exemplo de código a seguir mostra como excluir tarefas do MS Exchange Server em C#.

// Crie uma instância da classe ExchangeClient fornecendo credenciais
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Obter coleção de tarefas do Exchange
ExchangeMessageInfoCollection tasks = client.ListMessages(client.MailboxInfo.TasksUri);

// Analisar todas as tarefas na lista
foreach (ExchangeMessageInfo info in tasks)
{
    // Buscar tarefa do Exchange usando as informações da tarefa atual
    ExchangeTask task = client.FetchTask(info.UniqueUri);

    // Verifique se a tarefa atual atende aos critérios
    if (task.Subject.Equals("test"))
    {
        // Excluir tarefa da troca
        client.DeleteItem(task.UniqueUri, DeletionOptions.DeletePermanently);
    }
}

Obtenha uma licença de API gratuita

Você pode obter uma licença temporária gratuita para usar o Aspose.Email para .NET sem limitações de avaliação.

Conclusão

Neste artigo, você aprendeu como gerenciar tarefas no Microsoft Exchange Server. Particularmente, você viu como adicionar, atualizar ou excluir tarefas no MS Exchange Server programaticamente em C#. Além disso, você pode explorar a documentação para ler mais sobre o Aspose.Email para .NET. Além disso, você pode fazer suas perguntas através do nosso fórum.

Veja também