Exchange Server 2013 または Exchange Online において、同一フォルダーへの繰り返しコールが遅延する

現象
Exchange Server 2013 または Exchange Online において、MAPI の IMAPITable::Restrict() メソッドまたは Exchange Web Services の Folder.FindItems() メソッドを、同じフィルター基準を用いて繰り返しコールすると、同じフォルダーに対するその後のコールに、初回コール時と同程度の時間がかかるようになります。

この現象は、Exchange の以前までのバージョンでは異なります。以前までのバージョンでは、同じフォルダーへの初回以降のコールは、初回コール時よりも早くなります。
原因
この問題は、Exchange Server 2013 ではすべての制限をキャッシュしていないために発生します。以前のバージョンの Exchange ではすべての制限をキャッシュしていました。このため、以前のバージョンで同じ基準を用いてリクエストを繰り返すと、結果セット全体を再計算する必要はないのでリクエストは早く返されていました。
回避策
この問題を回避するには、検索フォルダーを作成し、望ましい属性を有するアイテムと一致するようにフォルダー基準を構成してください。その後、検索フォルダーで一致しているアイテムに対するクエリを実行してください。検索フォルダーの結果はキャッシュされ、また最新の状態に維持されるので、検索フォルダーの結果をリクエストがある度に再計算する必要はありません。

注: この回避策は、毎回同じ基準が使用されている場合にのみ有効です。検索基準を頻繁に変更している場合、ソートアンドシーク処理など別の方法が必要となる場合もあります。例えば、特定の日付時刻値に基づく検索では、同じ基準は使用されません。
詳細
検索フォルダーを作成する方法に関する詳細は、以下の MSDN 資料を参照してください。

プロパティ

文書番号:3077710 - 最終更新日: 07/14/2015 16:23:00 - リビジョン: 2.0

Microsoft Exchange Server 2013 Enterprise, Microsoft Exchange Server 2013 Standard, Microsoft Exchange Online

  • kbsurveynew kbprb kbexpertiseadvanced o365022013 o365 o365a o365e o365m KB3077710
フィードバック