gpt4 book ai didi

c# - 使用 mimekit/mailkit 过滤带附件的电子邮件

转载 作者:行者123 更新时间:2023-11-30 17:28:00 25 4
gpt4 key购买 nike

有没有办法只过滤带附件的电子邮件?我正在使用这段代码

using (var client = new ImapClient())
{
client.Connect(IMAPServer, IMAPport, IMAPSSL);
client.AuthenticationMechanisms.Remove("XOAUTH2");
client.Authenticate(User, Password);
var inbox = client.Inbox;
inbox.Open(FolderAccess.ReadOnly);
//filter email with attachments only
var results = inbox.Search(SearchQuery.NotSeen.And(SearchQuery.NotDeleted));
}

最佳答案

不幸的是,IMAP 不提供用于检查邮件是否有附件的搜索查询词,但是您可以做的是使用您想要的其他条件构造一个搜索查询(很像您已经完成),然后执行:

var results = inbox.Search(SearchQuery.NotSeen.And(SearchQuery.NotDeleted));
var items = MessageSummaryItems.BodyStructure | MessageSummaryItems.UniqueId;
var matched = new UniqueIdSet ();

foreach (var message in inbox.Fetch (results, items)) {
if (message.BodyParts.Any (x => x.IsAttachment))
matched.Add (message.UniqueId);
}

// `matched` now contains a list of UIDs of the messages that have attachments
// and also fit your other search criteria

关于c# - 使用 mimekit/mailkit 过滤带附件的电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53811968/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com