6

Exchange Web サービスのFindItems()呼び出しには、SearchFilterオブジェクトを取得するオーバーロードと、高度なクエリ構文 (AQS) のクエリ文字列を取得するオーバーロードがあります。現在、「subject:Foo OR subject:Bar」などの AQS クエリを呼び出し元からコードに受け入れ、それらを EWS に渡します。

SearchFilterしかし、日付範囲で制限するために、a も使用してフィルタリングを行いたいと思います。「date:>11/05/04」のように AQS 構文でそれを行うことは可能ですが、プログラムでフィルターを指定する方がクリーンだと思います。

new SearchFilter.IsGreaterThanOrEqualTo(ItemSchema.DateTimeReceived, d);

だから私がやりたいのは、クエリ文字列とクエリ文字列の両方によるSearchFilterクエリです。これを行うには、受け取ったクエリ文字列をオブジェクトに変換しSearchFilterて、独自のフィルタリングと一緒に「AND」できるようにします。

SearchFilterAQS クエリ文字列を指定して、クライアント上でを構築する方法はありますか?

4

1 に答える 1

3

私自身の質問に部分的に答える: EWS はパブリック フォルダーのクエリ文字列をサポートしていないため、これは不可能だと思いますが、SearchFilterパブリック フォルダーのオブジェクトはサポートしています。したがって、SearchFilterこの EWS 制限が無意味でない限り、クエリ文字列の機能を提供することはできません。

于 2013-02-01T16:05:05.577 に答える