E‑Mails vom Mail‑Server filtern
Nachrichten nach Absender, Empfänger oder Datum filtern
Die Pop3Client Klasse, beschrieben in Verbindung zum POP3‑Server herstellen, stellt die ListMessages() Methode, die alle Nachrichten aus einem Postfach holt. Um nur Nachrichten zu erhalten, die einer Bedingung entsprechen, verwende die überladene ListMessages() Methode, die nimmt MailQuery als Argument. Die MailQuery Klasse bietet verschiedene Eigenschaften zur Angabe der Suchbedingungen, z. B. Datum, Betreff, Absender, Empfänger usw. Die MailQueryBuilder Klasse wird verwendet, um den Suchausdruck zu erstellen. Zuerst werden alle Bedingungen und Einschränkungen gesetzt und dann MailQuery wird gefüllt mit der von MailQueryBuilder. Die MailQuery Klassenobjekt wird verwendet von Pop3Client um die gefilterten Informationen vom Server zu extrahieren. Dieser Artikel zeigt, wie man E‑Mail‑Nachrichten aus einem Postfach filtert. Das erste Beispiel veranschaulicht das Filtern von Nachrichten nach Datum und Betreff. Wir zeigen außerdem, wie man nach weiteren Kriterien filtert und komplexere Abfragen erstellt. Zudem wird die Anwendung von Datums‑ und Zeitfiltern gezeigt, um bestimmte E‑Mails aus dem Postfach abzurufen. Außerdem wird gezeigt, wie man eine Groß‑/Kleinschreibung‑sensitives Filtern anwendet.
Nachrichten aus dem Postfach filtern
Um Nachrichten aus einem Postfach zu filtern:
- Mit POP3‑Server verbinden.
- Erstellen Sie eine Instanz von MailQuery und die gewünschten Eigenschaften setzen.
- Rufen Sie die Pop3Client.ListMessages(MailQuery query) Methode und übergeben Sie die MailQuery in Parametern, um nur die gefilterten Nachrichten zu erhalten.
Das folgende Code‑Snippet zeigt, wie man sich mit einem POP3‑Postfach verbindet und Nachrichten abruft, die heute eingegangen sind und das Wort "newsletter" im Betreff haben.
Nachrichten nach spezifischen Kriterien abrufen
Die obigen Code‑Beispiele zeigt, wie Sie Nachrichten basierend auf dem E‑Mail‑Betreff und dem Datum filtern können. Wir können auch andere Eigenschaften verwenden, um weitere unterstützte Bedingungen festzulegen. Nachfolgend einige Beispiele für das Festlegen der Bedingungen mit MailQuery.
Die folgenden Code‑Snippets zeigen, wie man E‑Mails nach anderen Kriterien filtert:
- E‑Mails, die heute zugestellt wurden, finden.
- E‑Mails innerhalb eines Zeitraums finden.
- E‑Mails von einem bestimmten Absender finden.
- E‑Mails von einer bestimmten Domäne finden.
- E‑Mails an einen bestimmten Empfänger finden.
Heutiges Datum
Das folgende Code‑Snippet zeigt, wie man E‑Mails, die heute zugestellt wurden, findet.
Datumsbereich
Das folgende Code‑Snippet zeigt, wie man E‑Mails innerhalb eines Zeitraums findet.
Bestimmter Absender
Das folgende Code‑Snippet zeigt, wie man E‑Mails von einem bestimmten Absender findet.
Bestimmte Domäne
Das folgende Code‑Snippet zeigt, wie man E‑Mails von einer bestimmten Domäne findet.
Bestimmter Empfänger
Das folgende Code‑Snippet zeigt, wie man E‑Mails an einen bestimmten Empfänger findet.
Komplexe Abfragen erstellen
Falls unterschiedlich MailQueryBuilder Eigenschaften werden in separaten Anweisungen gesetzt, dann würden alle Bedingungen erfüllt. Zum Beispiel, wenn wir Nachrichten zwischen einem Datumsbereich und von einem bestimmten Host erhalten wollen, müssen wir drei Anweisungen schreiben.
Abfragen mit AND kombinieren
Das folgende Code‑Snippet zeigt, wie man Abfragen mit AND kombiniert.
Abfragen mit OR kombinieren
MailQueryBuilder stellt die Or() Methode, die zwei MailQuery Instanzen als Parameter. Es ruft die Nachrichten ab, die einer der beiden angegebenen Bedingungen entsprechen. Das folgende Code‑Snippet zeigt, wie man Nachrichten filtert, die entweder „test“ im Betreff haben oder „noreply@host.com“ als Absender. Das folgende Code‑Snippet zeigt, wie man Abfragen mit OR kombiniert.
Groß‑/Kleinschreibung‑sensible Filter
Die API bietet zudem die Möglichkeit, E‑Mails im Postfach anhand eines case‑sensitive Kriteriums zu filtern. Die folgenden Methoden ermöglichen die Suche von E‑Mails mit Angabe eines case‑sensitive‑Flags.
- Method Aspose.Email.StringComparisonField.Contains(string value, bool ignoreCase)
- Method Aspose.Email.StringComparisonField.Equals(string value, bool ignoreCase)
- Method Aspose.Email.StringComparisonField.NotContains(string value, bool ignoreCase)
- Method Aspose.Email.StringComparisonField.NotEquals(string value, bool ignoreCase)