Uso i servizi Web di Exchange per connettermi a una cassetta postale e cercare messaggi che soddisfano determinati criteri, utilizzando FindItems con un SearchFilter.Servizi Web di Exchange: ricerca di e-mail inviate a un destinatario
posso ottenere messaggi di posta elettronica in una cassetta postale di filtraggio sulla 'dal' indirizzo e-mail come questa:
var service = new ExchangeService(ExchangeVersion.Exchange2010_SP1)
{
TraceEnabled = true,
Credentials = new WebCredentials(username, password)
};
var filter = new SearchFilter.ContainsSubstring(EmailMessageSchema.From, "[email protected]");
service.FindItems(WellKnownFolderName.Inbox, filter, new ItemView(50))
E posso filtrare sulla proprietà DisplayTo
in questo modo:
var filter = new SearchFilter.ContainsSubstring(EmailMessageSchema.DisplayTo, "display name");
Ma per quanto riguarda Posso dire che cerca solo il nome visualizzato del destinatario. Voglio cercare su un indirizzo email o nome di dominio.
Questo non restituisce risultati quando mi aspetterei a:
var filter = new SearchFilter.ContainsSubstring(EmailMessageSchema.ToRecipients, "[email protected]");
E 'possibile trovare tutte le email in cui l'elenco dei destinatari contiene un indirizzo di posta elettronica specificato?
Sembra che questo problema esiste ancora in EWS API 2.2. Hai trovato qualche soluzione? – 02Anant
@ 02Anant La mia soluzione era di usare FindItems con una stringa di query, mostrata nella mia risposta e descritta qui https://msdn.microsoft.com/en-us/library/ee693615.aspx – mattk