2017-03-06 14 views
0

Gmailアカウントからメールを受け取るのにAE.Net.Mailを使用しています。 私の要件の1つは、プロセスの最後に特別なgmailフラグを設定することです。IMAP using c# - AE.Net.Mail Gmail Flagsを設定する

星がでどのように動作するかあなたが見ることができます:ここでhttp://fieldguide.gizmodo.com/add-extra-stars-for-better-gmail-sorting-1681334535

は私のコードです:この時点まで、

//Get msgs. 
Messages = imap.SearchMessages(condition2); 

foreach (Lazy<AE.Net.Mail.MailMessage> message in this.Messages) 
{ 
    imap.AddFlags("Seen", message.Value); 
    imap.AddFlags("\\Seen", message.Value); 
    imap.AddFlags("\\Flagged", message.Value); 
    imap.AddFlags("green-check", message.Value); 

私は緑のチェック星印が付いた電子メールを持っていることを期待していますメールに黄色の星印が付いています(フラグが立っています)、何か不足していますか?

ありがとうございました。

答えて

1

これはIMAPフラグとして設定できない可能性があります。ほとんどの場合、AE.Net.MailでサポートされていないGMailのLABELS拡張機能を使用する必要があります。

ただし、私のMailKitライブラリを使ってGMailのラベルを操作することはできます。 http://www.mimekit.net/docs/html/Overload_MailKit_MailFolder_RemoveLabels.htm http://www.mimekit.net/docs/html/Overload_MailKit_MailFolder_SetLabels.htm

http://www.mimekit.net/docs/html/Overload_MailKit_MailFolder_AddLabels.htm は、メッセージのバッチにラベルを要求するには、あなたが行うことができます:

var items = folder.Fetch (uids, MessageSummaryItems.UniqueId | MessageSummaryItems.GMailLabels); 
foreach (var item in items) { 
    Console.WriteLine ("message {0} has the following labels: {1}", item.UniqueId, 
     item.GMailLabels != null ? string.Join (", ", item.GMailLabels) : "None"); 
} 
関連する問題