2016-04-18 2 views
1

я в настоящее время работаю над ниже method которые итерацией через электронную почту в моем Inbox, но интересно, как filter им сосредоточиться на тех, с static subject такими как: nice weather. После поисков я думал, folders.Items.Restrict() может помочь, однако у меня есть condition is not valid на var fi = folder.Items.Restric("weather"). Я также пробовал var fi = folder.Items.Find("[Subject] = weather"), чтобы убедиться, что условие действительно, но оно не улучшается.Итерация через Outlook, сообщения электронной почты с конкретной темой

Заранее спасибо

static void IterateMessages(Outlook.Folder folder) 
    { 
     string[] extensionsArray = {".csv"}; 
     //var fi = folder.Items; 
     var fi = folder.Items.Restrict("weather"); 

     if (fi != null) 
     { 
      foreach (Object item in fi) 
      { 
       Outlook.MailItem mi = (Outlook.MailItem)item; 
       var attachments = mi.Attachments; 
       if (attachments.Count != 0) 
       { 
        if (!Directory.Exists(basePath) 
        { 
         Directory.CreateDirectory(basePath); 
        } 

        // Loop through each attachment 
        for (int i = 1; i <= mi.Attachments.Count; i++) 
        { 
         Console.WriteLine("Processing: {0}", mi.Attachments[i].FileName); 
         mi.Attachments[i].SaveAsFile(basePath); 
         Console.WriteLine("Attachment: {0}" + " Saved to Path", mi.Attachments[i].FileName); 
        } 
       } 
      } 
     } 
    } 

ответ

2

Ваш параметр Restrict, кажется, в неправильном формате. Попробуйте это:

var fi = folder.Items.Restrict("@SQL=\"urn:schemas:httpmail:subject\" like '%weather%'"; 

More information

+0

@Thanks 'diiN_' для наконечника. Лучший, –

Смежные вопросы