[英]How to see top 20 e-mails with C#
我正在尝试用 Windows Forms C# 做一个邮件应用程序。我只想查看收件箱的前 20 行。
编辑:代码工作正常,但只在我的收件箱中列出了 20 封随机电子邮件
我试过这个:
using (var client = new Pop3Client())
{
client.Connect("pop.gmail.com", 995, true);
client.Authenticate("mail", "passwrd");
for (int i = client.Count - 20; i < client.Count; i++)
{
var message = client.GetMessage(i);
Console.WriteLine("Subject: {0}", message.Subject);
txtBoxMails.AppendText("Subject: " + message.Subject + "\n");
}
client.Disconnect(true);
}
您可以使用GetMessages 。 它需要 2 个参数(int startIndex,int count)。 要获取的第一条消息的索引以及有多少条消息。
一个没有测试的例子。
var messages = client.GetMessages(0,20);
foreach (var item in messages)
{
Console.WriteLine(item.Subject);
}
你应该使用GetMessageCount
而不是Count
var messageCount = client.GetMessageCount();
var lastMessageIndex = messageCount-20;
for (int i = messageCount; i > lastMessageIndex; i--)
{
//Do
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.