ADO.NET Provider for Microsoft Exchange

Build 23.0.8839

データの自動キャッシュ

クエリごとにキャッシュを再構築したくない場合は、データを自動的にキャッシュすると便利です。初めてデータをクエリすると、本製品 はバックグラウンドで自動的にキャッシュを初期化して構築します。AutoCache = true の場合、本製品 は後続のクエリ実行にキャッシュを使用するため、応答時間が短縮されます。

自動キャッシュの設定

Contacts テーブルのキャッシュ

次の例は、接続文字列のCacheLocation プロパティで指定されたファイルのContacts テーブルをキャッシュします。

C#

String connectionString = "Cache Location=C:\\cache.db;AutoCache=true;User='myUser@mydomain.onmicrosoft.com';Password='myPassword';Server='https://outlook.office365.com/EWS/Exchange.asmx';Platform='Exchange_Online';Schema='EWS';";
using (ExchangeConnection connection = new ExchangeConnection(connectionString)) {
  ExchangeCommand cmd = new ExchangeCommand("SELECT LastModifiedByName, GivenName FROM Contacts WHERE BusinessAddress_City = 'Raleigh'", connection);
  ExchangeDataReader rdr = cmd.ExecuteReader();
  while (rdr.Read()) {
    Console.WriteLine("Read and cached the row with ItemId " + rdr["ItemId"]);
  }
}

VB.NET

Dim connectionString As [String] = "Cache Location=C:\\cache.db;AutoCache=true;User='myUser@mydomain.onmicrosoft.com';Password='myPassword';Server='https://outlook.office365.com/EWS/Exchange.asmx';Platform='Exchange_Online';Schema='EWS';"
Using connection As New ExchangeConnection(connectionString)
  Dim cmd As New ExchangeCommand("SELECT LastModifiedByName, GivenName FROM Contacts WHERE BusinessAddress_City = 'Raleigh'", connection)
  Dim rdr As ExchangeDataReader = cmd.ExecuteReader()
  While rdr.Read()
	  Console.WriteLine("Read and cached the row with ItemId " + rdr("ItemId"))
  End While
End Using

一般的なユースケース

データを自動的にキャッシュする一般的な用途は、レポートの作成やビジュアライゼーションの作成など、ライブデータソースに繰り返し要求を行うときのドライバーのパフォーマンスを向上させることです。自動キャッシュが有効になっていると、同じデータに対する繰り返しの要求は短期間で実行されますが、"ライブ"データと見なされる許容範囲内(CacheTolerance)になります。

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 23.0.8839