从 Mailkit/IMailFolder 过滤默认文件夹
filter default folder from Mailkit/IMailFolder
我正在尝试使用 Mailkit/IMailFolder 获取所有必需的文件夹。它给了我一些不需要的文件夹,比如 "Calendar, Contacts etc.",有什么好的方法可以过滤那个文件夹吗?因为在这样的文件夹中没有可用的电子邮件,它对我也没有用,它不是我创建的,它是默认文件夹。
我在 C# 中使用 folder.GetSubfolders(false) 方法。下面是我的代码。
static List<IMailFolder> GetFolders(IMailFolder personal = null)
{
try
{
if (personal == null)
{
personal = MailManager.Instance.ImapClient.GetFolder(MailManager.Instance.ImapClient.PersonalNamespaces[0]);
}
return personal.GetSubfolders(false).ToList();
}
catch (Exception ex)
{
return null;
}
}
您可以使用以下代码片段(使用 LINQ):
return personal.GetSubfolders (false).Where (x => X.Name != "Calendar" && x.Name != "Contacts").ToList ();
我正在尝试使用 Mailkit/IMailFolder 获取所有必需的文件夹。它给了我一些不需要的文件夹,比如 "Calendar, Contacts etc.",有什么好的方法可以过滤那个文件夹吗?因为在这样的文件夹中没有可用的电子邮件,它对我也没有用,它不是我创建的,它是默认文件夹。
我在 C# 中使用 folder.GetSubfolders(false) 方法。下面是我的代码。
static List<IMailFolder> GetFolders(IMailFolder personal = null)
{
try
{
if (personal == null)
{
personal = MailManager.Instance.ImapClient.GetFolder(MailManager.Instance.ImapClient.PersonalNamespaces[0]);
}
return personal.GetSubfolders(false).ToList();
}
catch (Exception ex)
{
return null;
}
}
您可以使用以下代码片段(使用 LINQ):
return personal.GetSubfolders (false).Where (x => X.Name != "Calendar" && x.Name != "Contacts").ToList ();