Filtrera meddelanden med AQS från Exchange‑brevlåda

Avancerad frågesyntax (AQS) är frågesyntaxen som används av Exchange som ett alternativ till sökfilter för att uttrycka sökkriterier. AQS är ett mer flexibelt sätt att utföra sökningar och leverera sökresultat för alla vanligen använda fält på objekten. AQS är också användarvänligt, lätt att förstå och snabbt att behärska. Att använda AQS är lämpligt för att hitta meddelanden efter bilagor och mottagare.

Skapa AQS-sökfrågor

Du kan skapa en sökfråga med AQS genom att:

Använda frågebyggare

För att skapa en sökfråga med ExchangeAdvancedSyntaxQueryBuilder du behöver:

Kodexemplet nedan visar hur ovanstående steg kan utföras:

using (var client = EWSClient.GetEWSClient(...))
{
    var advancedBuilder = new ExchangeAdvancedSyntaxQueryBuilder();
    advancedBuilder.From.Equals("Jim Martin");
    advancedBuilder.Subject.Contains("report");
    advancedBuilder.HasAttachment.Equals(true);

    var messages = client.ListMessages(client.MailboxInfo.InboxUri, advancedBuilder.GetQuery());
}

Direkta AQS‑frågor

För att skapa en sökfråga med ExchangeAdvancedSyntaxMailQuery du behöver:

Kodexemplet nedan visar hur ovanstående steg kan utföras:

using (var client = EWSClient.GetEWSClient(...))
{
    ExchangeAdvancedSyntaxMailQuery query = new ExchangeAdvancedSyntaxMailQuery("subject:(product AND report)");
    ExchangeMessageInfoCollection messages = client.ListMessages(client.MailboxInfo.InboxUri, query);
}