O Microsoft Exchange Server fornece vários recursos úteis para criar, enviar e gerenciar e-mails. Um desses recursos é uma caixa de correio compartilhada que pode ser acessada por vários usuários. Ao trabalhar com o MS Exchange Server a partir de seus aplicativos .NET, pode ser necessário acessar e-mails de uma caixa de correio compartilhada. Portanto, neste artigo, você aprenderá a ler mensagens de e-mail de uma caixa de correio compartilhada no MS Exchange Server usando C# .NET.
- API .NET para ler e-mails da caixa de correio compartilhada
- Ler e-mails de uma caixa de correio compartilhada
API C# .NET para ler e-mails da caixa de correio compartilhada no Exchange Server
Aspose.Email for .NET é uma API de processamento de e-mail que fornece uma variedade de recursos para criar, enviar e processar e-mails. Além disso, permite trabalhar com MS Outlook e Exchange Server sem escrever códigos complexos. Usaremos esta API para ler e-mails das caixas de correio compartilhadas no MS Exchange Server. Você pode baixar a DLL da API ou instalá-la de NuGet usando o comando a seguir.
PM> Install-Package Aspose.Email
Ler emails de uma caixa de correio compartilhada no Exchange Server em C#
A seguir estão as etapas para ler emails de uma caixa de correio compartilhada no MS Exchange Server com um cliente EWS em C#.
- Especifique as credenciais de rede.
- Conecte-se ao Exchange Server e obtenha a instância do cliente EWS em um objeto IEWSClient.
- Obtenha e-mails em uma matriz da pasta desejada usando o método IEWSClient.ListItems(String, String).
- Percorra cada e-mail na matriz e execute as seguintes etapas:
- Busque cada mensagem em um objeto MapiMessage usando o método IEWSClient.FetchItem(String).
- Leia os detalhes da mensagem usando o objeto MapiMessage, como a propriedade MapiMessage.Subject.
O exemplo de código a seguir mostra como ler mensagens de email de uma caixa de correio compartilhada no MS Exchange Server em C#.
const string mailboxUri = "<HOST>";
const string domain = "";
const string username = "<EMAIL ADDRESS>";
const string password = "<PASSWORD>";
const string sharedEmail = "<SHARED EMAIL ADDRESS>";
// Credenciais de configuração
NetworkCredential credentials = new NetworkCredential(username, password, domain);
// Conecte-se ao servidor
IEWSClient client = EWSClient.GetEWSClient(mailboxUri, credentials);
// Obter itens de e-mail
string[] items = client.ListItems(sharedEmail, "Inbox");
// Percorra os e-mails e busque cada mensagem
foreach (string item in items)
{
MapiMessage msg = client.FetchItem(item);
Console.WriteLine("Subject:" + msg.Subject);
}
client.Dispose();
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 a ler mensagens de email de uma caixa de correio compartilhada no Microsoft Exchange Server em C#. Para integrar esse recurso em seus aplicativos .NET, basta instalar a API e usar o exemplo de código fornecido. Além disso, você pode ler sobre outros recursos do Aspose.Email para .NET na documentação. Além disso, você pode fazer suas perguntas através do nosso fórum.