**הגדרה, שינוי והסרה של דגלי הודעה בשרת IMAP**
Contents
[
Hide
]
הגדרה/שינוי של דגלי הודעה
ניתן לשנות דגלי הודעה על‑ידי הגדרת חדשים בעזרת ה‑ ChangeMessageFlags() מתודה. מתודה זו מקבלת שני פרמטרים.
- מספר הרצף של הודעה או מזהה ייחודי שלה.
- MessageFlag.
הדגלים הבאים ניתנים להגדרה:
הקטע הקוד הבא מציג כיצד לשנות דגלי הודעה על שרת IMAP עם Aspose.Email.
// Mark the message as read
client.ChangeMessageFlags(1, ImapMessageFlags.IsRead);
הסר דגלי הודעה
דגלי הודעה ניתן גם להסיר באמצעות ה RemoveMessageFlags() מתודה. השימוש דומה לזה של ChangeMessageFlags() מתודה. היא מקבלת מספר סדר או מזהה הודעה ייחודי ו‑ MessageFlag. הקטע הקוד הבא מציג כיצד להסיר דגלי הודעה.
// Remove the message flag
client.RemoveMessageFlags(1, ImapMessageFlags.IsRead);
הגדרת דגלים מותאמים
ניתן גם להגדיר דגלים מותאמים אישית להודעה באמצעות ה ImapClient של ה‑API. ImapClient AddMessageFlags מספקת את היכולת להגדיר דגלים מותאמים אישית על הודעות.
// Create a message
MailMessage message = new MailMessage("user@domain1.com", "user@domain2.com", "subject", "message");
//Append the message to mailbox
string uid = client.AppendMessage(ImapFolderInfo.InBox, message);
//Add custom flags to the added messge
client.AddMessageFlags(uid, ImapMessageFlags.Keyword("custom1") | ImapMessageFlags.Keyword("custom1_0"));
//Retreive the messages for checking the presence of custom flag
client.SelectFolder(ImapFolderInfo.InBox);
ImapMessageInfoCollection messageInfos = client.ListMessages();
foreach (var inf in messageInfos)
{
ImapMessageFlags[] flags = inf.Flags.Split();
if (inf.ContainsKeyword("custom1"))
Console.WriteLine("Keyword found");
}