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
- Criar uma tarefa no MS Exchange Server em C#
- Atualizar uma tarefa no MS Exchange Server em C#
- Excluir tarefas no MS Exchange Server 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.
- Primeiro, conecte-se ao Exchange Server e obtenha a instância do cliente EWS em um objeto IEWSClient.
- Em seguida, crie uma instância da classe ExchangeTask.
- Defina as propriedades das tarefas, como assunto, status, etc.
- Finalmente, crie a tarefa usando o método IEWSClient.CreateTask(IEWSClient.MailboxInfo.TasksUri, ExchangeTask).
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.
- Primeiro, conecte-se ao Exchange Server e obtenha a instância do cliente EWS em um objeto IEWSClient.
- Em seguida, obtenha listas de tarefas em um objeto ExchangeMessageInfoCollection usando o método IEWSClient.ListMessages(IEWSClient.MailboxInfo.TasksUri).
- Faça um loop em cada ExchangeMessageInfo na coleção.
- Busque cada ExchangeTask usando o método IEWSClient.FetchTask(ExchangeMessageInfo.UniqueUri) e filtre o(s) necessário(s).
- Finalmente, edite as propriedades e atualize a tarefa usando o método IEWSClient.UpdateTask(ExchangeTask).
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#.
- Primeiro, conecte-se ao Exchange Server e obtenha a instância do cliente EWS em um objeto IEWSClient.
- Em seguida, obtenha listas de tarefas em um objeto ExchangeMessageInfoCollection usando o método IEWSClient.ListMessages(IEWSClient.MailboxInfo.TasksUri).
- Faça um loop em cada ExchangeMessageInfo na coleção.
- Busque cada ExchangeTask usando o método IEWSClient.FetchTask(ExchangeMessageInfo.UniqueUri) e filtre o(s) necessário(s).
- Por fim, exclua a tarefa usando o método IEWSClient.DeleteItem(ExchangeTask.UniqueUri, DeletionOptions.DeletePermanently).
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.