В настоящее время я использую библиотеку openPOP для получения писем в моем приложении .net. Но кажется, что в библиотеке openPOP нет никакого способа искать почту по теме, кроме как извлекать все сообщения и искать из найденных сообщений. Но такая операция занимает много времени.
Ниже приведен мой код для получения почты на основе критерия поиска "HeaderVal":
HeaderVal = "Case detail LEA/ED/05111802";
var client = new Pop3Client();
using (Pop3Client client2 = new Pop3Client())
{
// Connect to the server
client.Connect("pop.gmail.com", 995, true);
client.Authenticate("recent:" + userName, password, AuthenticationMethod.UsernameAndPassword);
//var count = client.GetMessageCount();
// Get the number of messages in the inbox
int messageCount = client.GetMessageCount();
// MessageHeader messageHeader =;
// We want to download all messages
List<Message> allMessages = new List<Message>(messageCount);
//var requiredMessage = allMessages.Where(x=>x.Headers == HeaderVal).
for (int i = messageCount; i > 0; i--)
{
allMessages.Add(client.GetMessage(i));
}
var RequiredMessage = allMessages.Where(x=>x.Headers.Subject.ToString().ToLower().Trim() == HeaderVal.ToLower().Trim());
}
Мне также нужно получить ответы, сделанные на это письмо, которые я не могу получить. Пожалуйста, предложите, если это можно сделать с помощью openPOP или любой другой библиотеки, которая решает эту проблему.