キャッシュベースの転送メソッドとアプリケーションごとのイメージ ID と共に HTTPHandler を使うには、以下の手順を実行します。
<configuration>
<system.web>
<httpHandlers>
<add verb="*" path="c1chart3Dimage.aspx"
type="C1.Web.C1WebChart3D.ImageHttpHandler,C1.Web.C1WebChart3D.4"/>
</httpHandlers>
</system.web>
<configuration>
作成されたイメージタグは、次のようになるはずです。
<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 によって絶対的な有効期限、相対的な有効期限、および優先順位を使って挿入されます。これによってスケジュールに基づいて、またはリソースのニーズに応じて削除できます。