C# 如何标记未看到的最后一条未读邮件S22.imap

C# 如何标记未看到的最后一条未读邮件S22.imap,c#,imap,C#,Imap,如何从邮箱中读取最后一封未读邮件,并在将此邮件标记为“未查看”后 我使用s22.imap.dll ImapClient Client = new ImapClient("imap.gmail.com", 993, "My_Username", "My_Password", true, AuthMethod.Login); // Get a list of unique identifiers (UIDs) of all unread messages in the mailbox. u

如何从邮箱中读取最后一封未读邮件,并在将此邮件标记为“未查看”后

我使用s22.imap.dll

ImapClient Client = new ImapClient("imap.gmail.com", 993, "My_Username",
    "My_Password", true, AuthMethod.Login);

// Get a list of unique identifiers (UIDs) of all unread messages in the mailbox.
uint[] uids = Client.Search( SearchCondition.Unseen() );

// Fetch the messages and print out their subject lines.
foreach(uint uid in uids) {
    MailMessage message = Client.GetMessage(uid);

 Console.WriteLine(message.Subject);
}

// Free up any resources associated with this instance.
Client.Dispose();

第一个获取uid最后一个未读消息:

var lastUid = Client.Search( SearchCondition.Unseen().Last() );
并阅读此消息

MailMessage message = Client.GetMessage( lastUid );
要将此邮件标记为“未看到”:

有关更多信息,请参见:

Client.RemoveMessageFlags( lastUid, null, MessageFlag.Seen );