Berichten filteren vanuit Exchange‑mailbox met WebDav
Berichten filteren met WebDav
De ExchangeClient class biedt de ListMessages() methode die alle berichten uit een postbus haalt. Gebruik de overladen ListMessages() methode die de MailQuery klasse als argument. De MailQuery klasse biedt diverse eigenschappen om voorwaarden op te geven, bijvoorbeeld datum, onderwerp, afzender en ontvanger. Bovendien staat de API toe om hoofdlettergevoelige filters toe te passen bij het ophalen van e‑mails uit de mailbox.
Berichten filteren
Om gefilterde berichten uit een mailbox te krijgen:
- Verbinden met de Exchange‑server.
- Maak een instantie van MailQuery en stel de gewenste eigenschappen in.
- Roep de ExchangeClient.ListMessages() methode en geef de MailQuery in de parameters om alleen de gefilterde berichten te krijgen.
Het volgende codefragment toont hoe u verbinding kunt maken met een IMAP‑postbus en berichten kunt ophalen waarvan het onderwerp de tekenreeks "Newsletter" bevat en die vandaag zijn verzonden.
Berichten filteren op criteria
De bovenstaande codevoorbeelden filteren berichten op basis van het e-mailonderwerp en de datum. We kunnen ook op andere eigenschappen filteren. Hieronder staan enkele voorbeelden van het instellen van de voorwaarden met behulp van MailQuery.
Filtercriterium Huidige datum
Het volgende codefragment toont hoe u alle e‑mails kunt filteren op basis van de datum van vandaag.
Filtercriteria datumbereik
De volgende codefragment toont hoe alle e-mails te filteren op basis van het datumbereik.
Filtercriteria specifieke afzender
De volgende codefragment toont hoe alle e-mails te filteren op basis van een specifieke afzender.
Filtercriteria specifiek domein
De volgende codefragment toont hoe alle e-mails te filteren op basis van een specifiek domein.
Filtercriteria specifieke ontvanger
De volgende codefragment toont hoe alle e-mails te filteren op basis van een specifieke ontvanger.
Filtercriteria op MessageID
De volgende codefragment toont hoe alle e-mails te filteren op basis van MessageID.
Filtercriteria alle bezorgnotificaties
De volgende codefragment toont hoe alle e-mails te filteren op basis van alle bezorgnotificaties.
Complexe queries bouwen
Als verschillend ExchangeQueryBuilder eigenschappen worden in een aparte verklaring ingesteld; alle voorwaarden komen overeen. Bijvoorbeeld, om een bericht te verkrijgen binnen een bepaald datumbereik en van een specifieke host, schrijft u drie statements:
Queries combineren met AND
Het volgende codefragment toont hoe u queries combineert met AND.
Queries combineren met OR
ExchangeQueryBuilder biedt de Or() methode die twee MailQueryinstantie‑parameters. Het haalt berichten op die voldoen aan een van de twee opgegeven voorwaarden. Het voorbeeld hieronder filtert berichten die ofwel het woord “test” in het onderwerp hebben of “noreply@host.com” als afzender. Het volgende codefragment toont hoe je queries kunt combineren met OR.
Hoofdlettergevoelige e-mailfiltering
E‑mails kunnen gefilterd worden op hoofdlettergevoeligheid door de IgnoreCase‑vlag op te geven in de filtercriteria, zoals getoond in het volgende codefragment.