ComponentOne Studio TrueChart for ASP.NET (C1WebChart3D) ヘルプ
チュートリアル6 - キャッシュベースの転送メソッドとアプリケーションごとのイメージ ID と共に HTTPHandler を使う
C1WebChart3D チュートリアル > HTTPHandler ベースの描画チュートリアル > チュートリアル6 - キャッシュベースの転送メソッドとアプリケーションごとのイメージ ID と共に HTTPHandler を使う

キャッシュベースの転送メソッドとアプリケーションごとのイメージ ID と共に HTTPHandler を使うには、以下の手順を実行します。

  1. C1WebChart3D をフォームに配置します。[確認] ダイアログボックスが表示されます。
  2. 「はい」をクリックして web.config ファイルに HttpHandler を追加します。この設定により、アプリケーションで C1WebChart3D の組み込み HttpHandler 機能が利用可能になります。
    <configuration>
      <system.web>
    <httpHandlers>
    <add verb="*" path="c1chart3Dimage.aspx"
    type="C1.Web.C1WebChart3D.ImageHttpHandler,C1.Web.C1WebChart3D.4"/>
    </httpHandlers>
    </system.web>
    <configuration>
  3. 必要に応じて、データと外観要素を設定します。
  4. C1WebChart3D の以下のプロパティを設定します。
    • ImageRenderMethod プロパティを ImageRenderMethod.HttpHandler に設定します。
    • ImageTransferMethod プロパティを ImageTransferMethod.Cache に設定します。
    • ImageIDGeneration プロパティを ImageIdGeneration.Application に設定します。
    • ImageUri プロパティが ""(空白)であることを確認します。
    • Page.Id が空であることを確認します。

プログラムを実行し、次のことに注意してください:

作成されたイメージタグは、次のようになるはずです。

<img id=C1WebChart3D1 src='c1chart3dimage.aspx CacheID=
 WebForm1.aspx_C1WebChart1_9F0D3D0E' />

"CacheID" 属性は、以下のようなキャッシュ変数へのアクセスを提供します。

WebForm1.aspx_C1WebChart1_9F0D3D0E_ImageBytes(実際のイメージを含む)
WebForm1.aspx_C1WebChart1_9F0D3D0E_Hash (ハッシュコードとイメージの種類を含む)

この場合、_Hash 変数は次の文字列を含みます。

”c1c_104_f1_c69d1f91.png”

この文字列はグラフプロパティの内容から一意に生成されます。C1WebChart3D 自体が描画するたびに、現在のハッシュをアプリケーションキャッシュ内の既存のハッシュと照合します。変更がなければ、グラフイメージを作成し直す必要はありません。キャッシュは複数のクライアントが使用できるため、単一のイメージを複数のクライアントで共有することもできます。この動作を C1WebChart3D の内部 HTTPHandler に組み込むと、サーバー負荷の軽減に役立ちます。

キャッシュ変数名は、描画ごとまたはクライアントごとに変わることはなく、変数の値のみが変わります。したがって、描画するたびにキャッシュ変数を削除する必要はありません。

キャッシュ変数は、C1WebChart3D の内部 HTTPHandler によって絶対的な有効期限、相対的な有効期限、および優先順位を使って挿入されます。これによってスケジュールに基づいて、またはリソースのニーズに応じて削除できます。